Laden...

Forenbeiträge von inek Ingesamt 182 Beiträge

30.10.2009 - 12:26 Uhr

Hallo zusammen,
ich hatte vor in der OnPaint Methode ein raster auf meine form zu zeichnen um verschiebbare element besser anordnen zu können.

Da bei einer leeren Form ein Raster super fies anzusehen ist, habe ich mich für kleine punkte entschieden und führe im OnPaint folgenden Code aus:


protected override void OnPaint(PaintEventArgs e)
        {
            base.OnPaint(e);
            this.graphics = e.Graphics;

            //draw Grid
            if (this.showGrid)
            {
                //calculate ViewArea
                this.viewArea = new Rectangle(new Point(0, this.menueStrip.Height), new Size(this.Width, this.Height - this.menueStrip.Height - this.statusStrip.Height));
                Rectangle point = new Rectangle(viewArea.Location, new Size(1, 1));

                //draw points
                int tmpWidth = 0;
                while (tmpWidth <= viewArea.Right)
                {
                    int tmpHeight = viewArea.Top;
                    while (tmpHeight <= viewArea.Bottom)
                    {
                        point.Location = new Point(tmpWidth, tmpHeight);
                        g.DrawEllipse(Pens.DarkBlue, point);
                        tmpHeight += this.gridSquare.Height;
                    }
                    tmpWidth += this.gridSquare.Width;
                }
            }
        }

funktioniert auch ... solange ich drüberliegende elemente nicht verschiebe..
dann flackerts ohne ende..

ich denke mal das das flackern daher kommt, das in jedem paint-vorgang ALLE punkte neu gezeichnet werden oder ?

hat jemand evtl. nen tipp wie ich es besser machen kann ?

30.10.2009 - 12:20 Uhr

Jo wenn ich es mit der selben ID wie du mache, klappts auch ...
Kann es sein, dass mache IDs an größe begrenzt sind ?

29.10.2009 - 16:23 Uhr

das wär nett, danke

28.10.2009 - 23:38 Uhr

Hallo zusammen,
ich würde gerne verschiedene Daten in die exif Felder eines von mir erzeugten jpg's schreiben und später weider auslesen... nun hab ich allerdings ein paar probleme..

1.ist es richtig, das ich von Imaging.PropertyItem kein leeres neues objekt erstellen kann ?

habs momentan so gelöst, das ich ein jpg in ein Image objekt lade und mir über
getPropertyitem eins hole..
dann muss ich allerding erst ein jpg speichern.. was ich eigendlich nicht möchte.

  1. iach habe zwar jetzt mein propertyitem und kann auch ein neues erstellen, indem ich einfach die id änder:

PropertyItem p = i.GetPropertyItem(propItems2[0].Id);
p.Id = 270;
p.Value = StringToByteArray(txt);
p.Len = p.Value.Length;
i.SetPropertyItem(p);
i.Save("e:\\test2.jpg");

funktioniert auch alles.. allerdings würde ich gerne recht lange datensätze in das Item schreiben..
kann aber irgendwie bei p.Len maximal 128 angeben... sobald ich diesen wert erhöhe wird mir bei i.save ein fehler geworfen.
Üngültiger parameter.

hat evtl. jemand nen tipp oder ne idee was ich falsch mache ? oder ist es generell nur möglich 128 byte in ein exif item zu schreiben ?

wenn ja bin ich für jeden anderern tip dankbar, der mir ermöglicht meine ( langen ) daten in einem jpg zu speichern.

06.10.2009 - 20:30 Uhr

oh man...

sry.. hätte nich gedacht das das auch wideder aop is 😃

immer dieses doofe aop..

06.10.2009 - 19:22 Uhr

EDIT(talla): Ab hier zwei Threads zusammengeführt da sie das gleiche Thema bilden.

Hallo zusammen...

ich wollte nur mal kurz nachfragen ob das was ich mir vorstelle überhaupt möglich ist :

ich hätte gerne eine methode die wie folgt ausschaut


[LOG]
private void testmethod()
{
.........
}

ist es möglich das ich allen methoden die über das attribute [LOG] markiert sind automatich code hinzufügen lasse ?

ich hätte gerne wen der code in der methode so auschaut:


textbox.text="test";

das dann, weil halt durch [LOG] markiert, folgendes ausgeführt wird:


using(new LogInOut)
{
textbox.text="test";
}

halt code hinzufügen anhand des attributes.

06.10.2009 - 19:16 Uhr

danke für die vielen antworten.. ich werd mal so versuch 😉

06.10.2009 - 16:58 Uhr

würd ich gern ^^.. aber hab absolut gar keine ahnung wie ich das ende der methode abfragen kann .. bzw.. wie ich abfrage ob die methode gerade ausgeführt wird oder nicht 😦

hmmm...

06.10.2009 - 16:48 Uhr

ich sträube mich eher davor ein fremdes framework zu nutzen

06.10.2009 - 16:42 Uhr

ja.. den gedanken hatte ich auch schon.. aber ich will keinen aufruf am funktionsende..hätte gerne das das funktionsende halt erkannt wird.. von der log klasse

06.10.2009 - 16:32 Uhr

ist es nicht mögich dieses mit den .Net eigenen mitteln zu erreichen ?

06.10.2009 - 14:22 Uhr

Hallo zusammen,

ich bin gerade dabei eine LOG class zu schreiben und hätte gerne folgende funktionalität:

ich möchte gerne in meiner solution diverse sachen mitloggen und am liebsten einfach am anfang einer methode eine funktion


log.logFunction();

ausführen, die mir dann in ne textdatei schreibt das die software momentan in dieser methode ist..

alles kein ding...
nu der knackpunkt.

ich möchte das meine logklasse jetzt automatisch bemerkt.. oha.. nu sind wir am ende der methode und dies dann wieder in meine txtfile packt.. also muss ich automatisch feststellen wenn ich aus einer methode herauskomme..

ist das möglich ?

also die txt soll dann später so ausschaun:

12:12:12 UHR \ eingang methode1
12:12:12 UHR | code in methode1
12:12:12 UHR \ eingang methode2
12:12:12 UHR \ eingang methode3
12:12:12 UHR | code methode 3
12:12:12 UHR | code methode 3
12:12:12 UHR / ausgang methode3
12:12:12 UHR / ausgang methode 2
12:12:12 UHR / ausgang methode 1

30.09.2009 - 15:22 Uhr

keiner ne idee ?

29.09.2009 - 00:05 Uhr

Hier das mit dder Tranzparenz

29.09.2009 - 00:05 Uhr

Hallo Herbivore
Hier das Bild mit dem Weissen Hintergrund

28.09.2009 - 23:15 Uhr

hallo zusammen,

ich suche jetzt schon seid einiger zeit bei google, foren, ect..

kann aber leider nichts finden was mir wirklich weiterhilft.. evtl habt ihr da nen schubs für mich.

ich habe mir ein kleinen tool geschrieben in dem ich anhand eines string einen Barcode erstelle.. funtioniert auch alles wunderbar.. unter den barcode schreibe ich den eingehenden string nochmal in klartext..

vorab erstell ich mir ein Bitmap objekt und hol mir da Graphics objekt worauf ich zeichne


Bitmap bmp = new Bitmap(width, height, System.Drawing.Imaging.PixelFormat.Format32bppArgb);

            Graphics g = Graphics.FromImage(bmp);

den klartext pack ich mir mit



g.DrawString(stringToEncode, footerFont, Brushes.Black, footerX, height-20);

drauf..

funktioniert bas dahin wunderbar..
ich kann das png speichern und sieht alles top aus.. = solange ich einen weissen hintergrund habe.

Allerdings hätte ich gerne einen tranzparenten Hintergrund und habe nachdem ich mir das Graphicsobjekt geholt habe schon folgendes ausprobiert :



g.Clear(Color.Transparent);

und


g.FillRectangle(Brushes.Tranzparent, 0, 0, width, height);

Der hintergrund wird zwar tranzparent, aber mein string sieht jetzt irgendwie scheisse aus.. total fett und pixelig..

hat da jemand ne idee woran das liegt und wie ich es beheben kann ?

11.08.2009 - 05:42 Uhr

hab jetzt alles versucht.. bei mir wird wild rumgeflackert beim scrollen.. der zeichnet einfach zu langsam

10.08.2009 - 16:57 Uhr

ok danke werd ich heute abend mal versuchen ..

10.08.2009 - 13:26 Uhr

Hab ich versucht, funktioniert aber nicht wirklich.. beim scrollen kommt der mit dem aktualisieren nicht mit.

06.08.2009 - 14:04 Uhr

Hallo zusammen,

Ich habe ein Panel mit der eigenschaft autoscroll=true.
Diesem Panel hab ich eine Hintergrund grafik gegeben.
Leider wird diese ständig mitgescrollt, is das irgendwie zu vermeiden ?

06.08.2009 - 14:02 Uhr

hat sich erledigt..
hab mir ein eigenes ListView gebaut.
Danke

04.08.2009 - 13:13 Uhr

hallo herbivore,
ja hab ich bei msdn auch gesehn,
will ich aber nicht 😃
will einfach nur den hintergrund transparent.
haste da evtl ne idee ?

04.08.2009 - 11:22 Uhr

also hab jetzt ein control gebaut und das von Listview abgeleitet.

im ctr hab ich jetzt:


this.SetStyle(ControlStyles.SupportsTransparentBackColor, true);
            
            this.SetStyle(ControlStyles.ResizeRedraw , true);
            this.SetStyle(ControlStyles.UserPaint, true);
            this.BackColor = Color.Transparent;

stehn.

nun hab ich den hintergrund transparent.

aber auch alle Items sind transparent 😃
also nicht mehr zu sehen

bzw. denk ich das dann garnicht gezeichnet wird.

04.08.2009 - 10:49 Uhr

hallo zusammen,

ich würde gerne ein listview mit einer transparenten hintergrundfarbe belegen,
defaultmäßig geht das ja leider nicht deshalb hab ich es mit,


this.SetStyle(ControlStyles.SupportsTransparentBackColor,true);
            this.BackColor = Color.Transparent;

versucht.
jedoch bleibt mein listview immer weiss.

hat jemand evtl. nen tip für mich ?

26.06.2009 - 20:18 Uhr

zu 1)
Du kannst die Datenbanken selber nicht per Kennwort schützen. Zu jeder SQL Server Instanz kannst du Benutzer anlegen. Diese sind entweder SQL Server Benutzer oder Windows Accounts. Da es sich allerdings um einen Webzugriff handelt, musst du einen SQL Server Benutzer anlegen.

was heisst ich kann die DB nicht schützen nur die Instanz ?
Sry.. aber was is mit einer instant dann genau gemeint ?

26.06.2009 - 20:15 Uhr

Ja ich weiss..
bin ja auf :
http://msdn.microsoft.com/de-de/library/system.data.sqlclient.sqlconnectionstringbuilder_members(VS.80).aspx

Dennoch sieht der vom buider generierte string so aus :
Data Source=local;Initial Catalog=clean;Integrated Security=True

statt meinem vorherigen :
"server=(" + dbServer + ")\SQLEXPRESS;database=" + db + ";Integrated Security=SSPI;"

Bin davon ausgegangen, das ich mich mit dem generierten String connecten kann, aber da fehlen ja noch n paar angeben oder seh ichd as falsch..

Connecten kann ich mich ja so nich, Server wurde nicht gefunden.

Es fehl z.B.: \SQLEXPRESS hinter dem server.. was anscheinend wichtig ist, wenn man mit sql server express arbeitet.

26.06.2009 - 19:56 Uhr

ok guck ich mir auch mal an..
Sach mal der SqlConnectionStringBuilder...

wie kann ich dem denn sagen Welche DB vom server ich nutzen will ?

Server adresse leg ich ja mit


SqlConnectionStringBuilder sb = new SqlConnectionStringBuilder();
                sb.DataSource = "local";

fest.. aber db ??

ausserdem bekomm ich da doch NIE was in der art zurück oder ?


new SqlConnection("server=(" + dbServer + ")\\SQLEXPRESS;database=" + db + ";Integrated Security=SSPI;");

26.06.2009 - 19:46 Uhr

Hi Khalid,
danke für die schnelle Antwort.

Ja es ist mein eigener server.
Den Link schau ich mir jetzt mal an.
zum Punkt Webservices .. kannst du mir dazu noch was genaueres sagen ?? wie ich das machen soll ??

26.06.2009 - 19:14 Uhr

Hallo zusammen,

bin momentan dabei ein kleines Tool zu schreiben, was auf eine MS SQL Server Express DB zugreift.
Momentan hab ich die DB local laufen und connecte über :


con = new SqlConnection("server=(" + dbServer + ")\\SQLEXPRESS;database=" + db + ";Integrated Security=SSPI;");

Jetzt würd ich als ersten schritt gerne die DB mit nem Kennwort sichern.
ich nutze ua. SQL Server Management Studio Express.
Dann würde ich gerne die DB auf meinen Webserver legen und übers Web zugreifen.

Meine 3 Fragen diesbezüglich :

  1. Wie kann ich für die DB über "SQL Server Configuration manager" oder "SQL Server Management Studio Express" ein Kennwort setzten?

  2. Was an meinem ConnectionString muss ich ändern um auf die Kennwortgeschützte DB zu kommen ?

  3. ist es ohne weiteres machbar übers web an die DB zu kommen ? oder muss ich dem SQL Server erst sagen, dass er Datenbankzugriffe übers Web erlauben soll?

Ausserdem erstelle ich, wenn die DB nicht vorhanden oder einen alten stand hat, diese komplett über meinen Code neu. ( also alle Tabellen )
Kann ich auch das Kennwort der DB über c# setzten ?

vielen Dank im Voraus

08.06.2009 - 16:47 Uhr

sry.. bei mir bringt das irgendie nix.. hab trotzdem das problem, das meine form den focus klaut..

08.06.2009 - 14:03 Uhr

Hallo zusammen.. ich habe folgendes Problem und finde leider absolut keine lösung über suche und Google..

ich habe eine form, die ich ähnlich wie ein tooltip ab und an anzeigen lasse.. problem ist, diese form darf mir nicht den focus klauen.

gibt es evtl ne möglichkeit der form direkt zu sagen das die gar keinen focus bekommen kann ( darf )?

28.05.2009 - 09:01 Uhr

ok.. top mitm Timer gehts.. ^^

danke

28.05.2009 - 08:47 Uhr

werde es jetzt gleich mal mit dem Timer versuchern.. mit Move gehts leider nicht.. hab ich auch schon getestet..

27.05.2009 - 10:50 Uhr

Hallo zusammen,

ich hab ein kleines Problem mit DragDrop

ich nutze volgenden Code im MouseDownEvent meines Controls


if (e.Button != MouseButtons.Right)
           control.DoDragDrop("dragdropString", DragDropEffects.Copy);

Funktioniert auch alles wunderbar..

Allerdings hab ich auch was im event von DblClick stehn, was nicht mehr ausgeführt wird..
Also doubleClick wird einfach komplett ignoriert.

hat da evtl jemand nen tipp für mich?
Muss ich den DragDropvorgang im mouseup wieder ausschalten oder ähnliches ?

Danek im voraus.

22.05.2009 - 02:31 Uhr

ok habs 😃

habs nun mit :


 protected override void WndProc(ref Message m)
        {
            if (m.Msg == 0x112 && m.WParam == (IntPtr)0xf012)
            {
                return;
            }
            base.WndProc(ref m);
        }

hinbekommen.. wenn jemand was an der methode auszusetzen hat oder ne bessere idee hat immer her damit .. 😃

22.05.2009 - 02:19 Uhr

So..

hab jetzt nochwas gefunden.. das ich es am besten über


if (m.Msg == WM_NCHITTEST && (int)m.Result == HTSYSMENU)
            {
                m.Result = (IntPtr)HTCLIENT;
                return;
            }

machen soll aber irgendwie is bei mir m.Result IMMER 0

22.05.2009 - 02:00 Uhr

Hallo zusammen...

suche jetzt schon seid Stunden im Forum und bei Google.. kann aber leider nichts finden was mir helfen kann..

Also hab eine kleine Form, bei der ich gerne dass maximieren per Doppelklick auf die Titelleiste und das verschieben der form mit gedrückter Maustaste auf der Titelleiste verhindern möchte.. möchte aber dennoch ´den FormBorderStyle nicht auf none setzten...

Auch ein Reagieren auf LocationChange finde ich nicht wirklich schön..

ich versuchs momentan durch ein abfangen der WndProc msg.. aber bekomme es nicht wirklich hin...

Das Maximieren hab ich geschafft zu verhindern durch :


protected override void WndProc(ref Message m)
        {
            
            const int WM_NCLBUTTONDBLCLK = 0x00A3;

            if (m.Msg == WM_NCLBUTTONDBLCLK)
            {
                return;
            }
            
            base.WndProc(ref m);
        }

jedoch hab ich das verschieben über :


protected override void WndProc(ref Message m)
        {
            
            const int WM_MOVE = 0x0003;
            const int WM_MOVING = 0x0216;
            
            if (m.Msg == WM_MOVING||m.Msg==WM_MOVE)
            {
                return;
            }
            base.WndProc(ref m);
        }

versucht zu unterbinden... was aber einfach keinerlei auswirkungen zeigt..
langsam verzweifel ich an diesem Problem.

Ich weiss, dass einige es nicht schön finden dem nutzer dieses recht zu nehmen, was aber leider ein MUSS ist 😃

vielleicht kann mir ja wer von euch helfen..

23.03.2009 - 17:41 Uhr

vertseh nich so ganz was du meinst.. ich muss doch mein drag n drop dadurch starten, dass ich mousdown nutze..

23.03.2009 - 16:00 Uhr

Hi zusammen..
habe folgendes Problem:

Ich habe ein Treeview und eine textbox
nun möchte ich von einem markierten treenode den tag in per drag n drop in die textbox bekommen..

und nutze dazu im TreeView:


private void tv_camstrukt_MouseDown(object sender, MouseEventArgs e)
        {
            if (tv_camstrukt.SelectedNode!=null)
            tv_camstrukt.DoDragDrop(tv_camstrukt.SelectedNode.Tag.ToString(), DragDropEffects.Copy);
        }

Mein problem ist, dass ich jetzt keine Nodes mehr durch click markieren kann.. anscheinend wird das click event einfach unterbrochen und es bleibt immer das alte node markiert.

24.02.2009 - 17:12 Uhr

vielen dank...

24.02.2009 - 17:05 Uhr

ok.. versuch ich thx..

wenn du mir jetzt noch nen tipp geben kannst wie ich an die binärdaten von einer datei herannkomme.. und später anhand der binärdaten auch die datei richtig öffnen kann bin ich vollkommen glücklich 😃

24.02.2009 - 17:01 Uhr

na wie komm ich denn an die binärdaten .. sry...

und was muss ich in access denn dann als felddatentyp deklarieren ??

24.02.2009 - 16:58 Uhr

.... versteh ich nich so wirklich sorry...
wie würde denn so eine speicherung aussehn ??

kannste mir da n musterbeispiel nennen ?? damit ich die den aufbau verstehe ??

24.02.2009 - 16:55 Uhr

hmmm...

also ich denke dann verwende ich access... was muss ich machen damit ich z.B. ein bild oder ein worddocument als binär abspeichern kann??

muss ich das umwandeln ??

wie bekomm ich es zurück gewandelt ??

woher kann ich erkennen, was es früher einmal war ??

24.02.2009 - 16:45 Uhr

hi.. vielen Dank für die superschnelle Reaktion 😃

ja an acces hab ich auch schon gedacht ...
aber wie mach ich dann da mit z.B Dateianhängen ??

xml kann ich leider nich ( bzw. noch nie mit zu tun gehabt)

24.02.2009 - 16:36 Uhr

Hallo zusammen,

ich würde gerne mal eine meinung von euch hören:

ich würd gerne einen eigenen mailclient schrweiben, Hauptproblem ist die archivierung der daten.

was is da die beste möglichkeit..

ich würd im ersten ansatz einfach die mailInformationen in eine txt schreiben..

und anhand der Zeilen aufteilen

Von
An
Betreff
TEXT

die txt dann evtl. nach Datum und Uhrzeit benennen...

hab aber dann das problem, das ich irgendwann 1000000 dateien hab..

gibt es ne Möglichkeit die einzelnen Dateien in eine zu packen.. wo sie aber trotzdem einzeln zugreifbar bleiben ??

so wie bei outlook die pst datei ??

oder würdet ihr generell nen anderen weg vorschlagen ??

24.02.2009 - 12:27 Uhr

Hi.. Danke für dei schnellen antworten...

die eigenschaft DoubleBuffered hat bei mir leider gnichts bewirkt.. die anderen methoden muss ich erstmal versuchen zu verstehen ^^..

ich werde mir diese gleich mal anschauen...

24.02.2009 - 11:20 Uhr

Hallo zusammen,

leider hab ich in der suche nicht wirklich eine Lösung für mein Promlem gefunden, evtl. kann mir jemand von euch dabei helfen....

ich habe ein Label mit dem aktuellen Datum und einen Button über einem Zeitstreifen...

den Button hab ich so implementiert, das ich dessen Location anhand von MouseMove ändern kann..

Das Label ändert seine Position gleichzeitig mit und zeigt die Uhrzeit, an der sich der Button auf dem Zeitstreifen befindet an...

Was auch alles wunderbar funktioniert ( solang ich das recht langsam mache)

sobald ich den Button etwas schneller bewege, kommt der mit dem zeichnen des labels nicht wirklich mit.. und ich erhalte ein flackern...

hat evtl. jemand da nen tip für mich, wie ich das flackern ( bei jeder geschwindigkeit ) unterbinden kann ??

26.01.2009 - 12:09 Uhr

also hab ich erstma verloren 😃..

naja.. dann guck ich ma wie ich son directx button erzeugen kann..

aaahh... ich hab noch folgendes grade festgestellt.. :

die oben liegende form mit dem button hab ich ja auf TopMost=true; gesetzt...

sobald ich ne komplett andere form aufrufe, die dann die eigenschaft TopMost=true; übernimmt, is das flackern weg..

weiss nich obs wichtig für ne diagnose is 😃...

26.01.2009 - 11:42 Uhr

Hallo herbivore
ja das Thema hab ich schon gefunden, hat mir aber nicht weitergeholfen...
es scheint so als ob der Button in der oben liegenden form die ganze zeit neu gezeichnet wird.. da sich das video im untergrund die halt ständig verändert..

Hallo Jack

hmm... von directX hab ich leider ma absolut gar keine ahnung..

gibt es nicht ne möglichkeit der form zu sagen.. ( nicht neu zeichnen)

meine mit win32 api hab ich die möglichkeit durch

WS_CLIPCHILDREN und WS_CLIPSIBLINGS

weiss aber nich obs das richtige is, und wie ich es auf meine form ( button) anwenden kann..