Laden...

Forenbeiträge von derfrecheDachs Ingesamt 34 Beiträge

24.04.2008 - 09:35 Uhr

Hab jetzt selber was gefunden:

Es hängt mit gewissen Synchronisationsproblemen von VS2005 zusammen. So wie es aussieht, schreibt VS2005 die Änderungen nicht an die richtige Stelle. Deswegen sieht es so aus, als wären diese Änderungen nicht da.

23.04.2008 - 10:09 Uhr

Man kann ja die Resourcen auch für verschiedene Sprachen anlegen, also z.b. hat man dann einen Default .Resx und für Deutsch eine .de.resx

und wenn man das jetzt noch mit Vererbung verbindet, also Formular a erbt bestimmte Resourcen von Formular b z.b eine Buttonleiste, dann hat man genau die Konstellation, die ich momentan hier habe.

Beispiel ist schwierig , wenn ich es momentan selber noch nicht so richtig einkreisen kann.

22.04.2008 - 10:42 Uhr

Hallo Herbivore,

was meinst du mit konkreter, weiss ja momentan selber nicht recht, was es sein könnte, zumal es ja bisher auch gut funktioniert hat.
Kann es sein, dass mit den Resourcen irgendwas nicht mehr ganz stimmt ?? Oder gibt es im Visual STudio 2005 irgendwelche fehler, die sowas verursachen könnten ??

21.04.2008 - 13:31 Uhr

Versuche in einem abgeleiteten Formular in der 2. Sprache Resourcen zu ändern. Nachdem ich wieder auf die Orginalsprache zurückgehe und diese speichere ist bei einem erneuten Aufruf der 2. Sprache alles wieder beim alten. d.h die Änderungen an der 2. Sprache sind weg.

An was kann dies liegen, da bisher dies ohne Problem funktioniert hatte.

14.04.2008 - 13:06 Uhr

Das Formular reagiert noch auf die Maus, verschieben ist auch möglich, nur auf die Tastatur will es nicht mehr.

09.04.2008 - 12:20 Uhr

Eine Endlosschleife,
hmm, die müsste dann aber auch in den funktionierenden Formularen drin sein, da dort derselbe Mechanismus verwendet wird.

09.04.2008 - 11:32 Uhr

Hat jemand eine Idee, woran das liegen könnte.

Ich habe Formulare, da funktioniert es, aber auch Formulare, da funktioniert es nicht. Kann mir aber keinen Reim drauf machen, warum und wieso das so ist

21.02.2008 - 11:20 Uhr

Hallo Klaus,

eine Skalierung mache ich schon für jeden Punkt mittels einer 4*4-Matrix, also so wie es normalerweise mathematisch richtig gemacht wird. Die Skalierung in .net muss man ja auch selber machen. Trotzdem verhalten sich die Win32Api-Funktionen anders als die normalen .net-Funktionen.
Ich hole mir am Anfang mit e.Graphics den jeweiligen Devicecontext, berechne die Faktoren in X/Y-Richtung und vor dem Zeichnen wende ich die Matrix auf alle Koordinaten an. Ich zeichne dann unabhängig, ob das jetzt ein Formular ist oder beim Printer eben ein printdocument, auf diesen. Bei den .Net-Zeichenfunktionen funktioniert das auch alles, nur eben die Win32-Api-Funktionen werden verkleinert dargestellt. So als ob die die falschen Einstellungen benutzen würden.

Für Win32 hole ich mittels dc = oberflaeche.GetHdc(); mir den DeviceHandle aus der Graphics-Komponte raus.

Ich habe jetzt was gelesen, dass die Printersettings bestimmte Methoden anbieten, um mit Win32Api zu arbeiten. Leider find ich kein entsprechendes Beispiel dazu.

21.12.2007 - 11:08 Uhr

Ich benutze normalerweise die **.net-Funktion FillPolygon / drawPolygon ** um ein Grafik Objekt zu zeichnen. Aus Geschwindigkeitsgründen bin ich auf die Win32Api-Funktion Polygon umgestiegen.
Beim Zeichnen auf den Bildschirm funktioniert dies auch , so wie erwartet. Möchte ich aber was ausdrucken, dann erscheint die mit WIn32API-Polygon gezeichnete Grafik ganz klein .
Ich vermute mal , dass dies mit der unterschiedlichen DPI-Auflösung beim Drucken zusammenhängt.
Wie mach ich es jetzt aber, dass die Grafik wieder wie gewohnt gleich gross erscheint, wie alle anderen. Was muss ich da an Parametern setzen bzw. der Win32APi-Funktion Polygon mitgeben ?? ?(

06.11.2007 - 09:29 Uhr

Danke euch für die Antworten.

Wusste bisher nicht, dass der Quicksort instabil ist.

Ich hab jetzt den IComparer so angepasst, dass er bei gleichen Werten einfach die nächste Spalte zum Sortieren mit hinzunimmt.
Also wenn ich zuerst nach A sortiere, dann M und L hinzunehme

05.11.2007 - 16:32 Uhr

Ich versuche eine Liste zu sortieren, die z.t gleiche Werte aufweisst. Die Sortierung springt dabei von 2 Zuständen hin und her. Kann man das irgendwie verhindern oder hat Sort bei gleichen Werten Probleme ??

<Beispiel> Sotierung nach M, ergibt einmal
A : 21 M. 50 L 22
A : 0 M. 50 L 2
A : 5 M. 50 L 7
A : 49 M. 50 L 12
A : 13 M. 50 L 16
A : 17 M. 50 L 19
A : 33 M. 50 L 22
A : 25 M. 50 L 22
A : 29 M. 50 L 22
A : 9 M. 50 L 5
A : 37 M. 50 L 20
A : 45 M. 50 L 15
A : 53 M. 50 L 10
A : 57 M. 50 L 9
A : 61 M. 50 L 6
A : 65 M. 50 L 5
A : 69 M. 50 L 4
A : 73 M. 50 L 3
A : 77 M. 50 L 2
A : 81 M. 50 L 1
A : 85 M. 50 L 1
A : 89 M. 50 L 1
A : 93 M. 50 L 0
A : 97 M. 50 L 0
A : 41 M. 120 L 35

danach erneute Sortierung nach M, ergibt :

A : 65 M. 50 L 5
A : 69 M. 50 L 4
A : 73 M. 50 L 3
A : 53 M. 50 L 10
A : 57 M. 50 L 9
A : 61 M. 50 L 6
A : 89 M. 50 L 1
A : 93 M. 50 L 0
A : 97 M. 50 L 0
A : 77 M. 50 L 2
A : 81 M. 50 L 1
A : 85 M. 50 L 1
A : 49 M. 50 L 12
A : 13 M. 50 L 16
A : 17 M. 50 L 19
A : 21 M. 50 L 22
A : 0 M. 50 L 2
A : 5 M. 50 L 7
A : 9 M. 50 L 5
A : 37 M. 50 L 20
A : 45 M. 50 L 15
A : 33 M. 50 L 22
A : 25 M. 50 L 22
A : 29 M. 50 L 22
A : 41 M. 120 L 35

30.04.2007 - 08:33 Uhr

Ja

Soweit ich schon herrausgefunden habe , muss es mit nicht geschlossenen Contextmenüs zusammenhängen . Kann mir aber noch keine so richtigen Reim drauf machen

Ich hab jetzt die Autoclose-Funktion des Context-Menües ausgeschaltet und Schliesse das Menü selber ... dann funktioniert auch wieder alles

27.04.2007 - 16:13 Uhr

Kann mir eienr sagen woran das liegen könnte ?? das Fenster ist aktiv, hat den Focus, aber es reagiert auf keine Mouse-Events mehr

04.04.2007 - 15:57 Uhr

Hallo gibt es bei Strings die Möglichkeit, anstatt einer wissenschaftlichen Darstellung z.b. 10E22 auch einfach 10²² auszugeben ??

Gruß derfrechDachs

03.04.2007 - 14:06 Uhr

durch etwas Handarbeit hab ich es jetzt folgendermaßen gelöst:

Die Grafik wird ganz normal transfomiert.

Beim Text mach ich es aber so, dass ich mir erst die ursprüngliche Transformation merke, dann einen Reset mache, die Transformationen nur auf den Ursprungspunkt des Textes anwende , ihn dann zeichne und danach wieder die ursprüngliche Transformatin einstelle .

Das ganze sieht dann Code-mässig ungefähr so aus:

            PointF[] pointarray = new PointF[1];  
            pointarray[0] = Text.Linksunten;                  
            oldmatrix.TransformPoints(pointarray);  
              
           Text.Zeichne(Oberfläche);  
             
          Oberfläche.Transform = oldmatrix;  

Etwas kompliziert, aber es scheint mir keine einfachere Lösung zu geben

02.04.2007 - 15:59 Uhr

Hallo herbivore ,

ja schon, aber an und für sich brauch ich ja meine Transformationen, um zum Einen meinen Koordinatensystem-Urspung richtig zu setzen (nicht links oben , sondern links unten) und zum Anderen die Werte der Achsen anzugeben d.h. beim Zeichnen findet ja durch eine Skalierungsmatrix eine Transformation meines fiktiven Koordinatensystems, welches immer diesselben Max-Werte in x/y-Richtung aufweisst, auf die tatsächlich vorhandene Fenstergröße statt.
Problem ist hier eben nur der Text, der ja mit transformiert wird und das soll er eben nicht.

Gruß derfrecheDachs

02.04.2007 - 15:38 Uhr

geht dabei dann nicht die Textpositionierung verloren d.h. ich müsste mir die Position des Textes dann selber ausrechnen ??

02.04.2007 - 14:51 Uhr

Benutze Matrixtransformationen um eine Grafik zu drehen, zu skalieren oder zu verschieben.
Nun hab ich um die Grafik ein Koordinatensystem mit entsprechender Skalierung gezeichnet. Problem : der text des Koordinatensstems wird entsprechend der verwendeten Matrizenoperationen gestaucht und damit unlesbar. Wie kann ich das verhindern ??

22.03.2007 - 11:49 Uhr

.....an was das genau liegt.

Ich vermute mal, dass es bei manchen Fonts eben gewisse Dinge nicht gibt

21.03.2007 - 13:37 Uhr

Hallo,

verwende ein Graphicpaths-Objekt, in das ich alle Elemente stecke, die ich zeichnen möchte.
Dies wende ich auch bei Texten über die Methode AddString(Zeichenfolge,Schriftart,DashStyle,Groesse,Linksunten,StringFormat.GenericDefault); an.
Wenn ich nun über einen Font-Dialog einen anderen Font auswähle und bestimmte Fontcharakteristika neu setze bekomme ich ab und an eine Argumentexception. Woran liegt das ??

Kann es sein, dass bestimmte Dinge in StringFormat.GenericDefault nicht gesetzt sind ?? Wie kann ich so etwas verhindern ??

01.03.2007 - 13:56 Uhr

Dataset mit Access-Tabelle verbunden,Inhalt des Datasets wird über ein Formular mit Textboxen angezeigt, in BindingComplete-Event einer jeden Textbox eingeklinkt , um auch bei Falscheingabe das Feld noch verlassen zu können

Bei Eingabe eines nicht korrekten Wertes erscheint rechts vom Textfeld ein Hinweis über einen errorprovider.

Ich möchte in einem Formular den Inhalt einer Zeile eines Datasets in Textboxen darstellen. Dies funktioniert soweit auch. Wenn ich nun aber die Werte verändern möchte passiert folgendes

Wenn ich bei einer Textbox , in er vorher ein unerlaubter Wert gestanden hat, einen erlaubten Wert eingebe, werden die Daten vom Dataset nachgeladen mit dem Resultat, dass bereits eingegebene, aber noch nicht gespeicherte Werte überschrieben werden.

Wie kann ich diesen Mechanismus verhindern bzw. warum passiert das überhaupt ??

01.03.2007 - 09:15 Uhr

Danke dr4g0n76,

genau sowas brauch ich dringend. Jedesmal wenn ich meine fertig zu sein, merk ich dass da noch ein Event dazwischenspuckt.

Werd das gleich einbauen

Vielen Dank

28.02.2007 - 16:33 Uhr

Gibt es in Visualstudio 2005 eine Möglichkeit oder ein Plugin , um sich alle Events eines Controls zur Laufzeit ausgeben zulassen ?

12.02.2007 - 11:41 Uhr

Hallo,

gibt es eine Möglichkeit bei einem Tabcontrol mit Reiter auf der linken Seite (Alignment = left) den Text der Tabpages entsprechend mitzudrehen, also dass dieser nicht senkrecht sondern waagrecht ausgegeben wird ??

23.11.2006 - 13:38 Uhr

Einer direkten Zuweisung.

Ich versuche Daten einzulesen und die dann in die Datatable an die entsprechenden Stellen zuzuweisen.

               Tabelle.Rows[j]._ = Wert;                     

Jetzt hab ich es :

Also das Problem war folgendes:

Ich hab die Zuweisung mit Tabelle.Rows[j].ItemArray_ = Wert; gemacht und das geht nicht, da man ItemArray nur über ein object-Array befüllen kann.

Die Anweisung oben funktioniert dagegen

23.11.2006 - 10:15 Uhr

Guten Morgen,

wenn ich in einer DataTable ein Element einer DataRow ändere, dann ändert sich nomalerweie der RowSte der DataRow von "unchanged" auf "Modified". An was kann es liegen, wenn er das bei einer Zuweisung nicht tut ??

Gruß Horst

22.11.2006 - 12:51 Uhr

Ich hab das Problem gelöst.

Musste vor dem Verändern der Werte

neueTabelle.AcceptChanges()

setzen (dann wird der Status der Reihe auf unchanged gesetzt).
Vorher stand er auf Added (hatte die DataRow erst kur vorher erzeugt und hinzugefügt) und da blieb er auch. Deswegen hat er meine Zuweisungen nicht übernommen.

Also:

neueTabelle.AcceptChanges(); //RowState = unchanged

neueTabelle.Rows[k].ItemArray[l] = alteTabelle.Rows[k].ItemArray[l]; // RowState = Modified

und schon funktioniert es

22.11.2006 - 11:22 Uhr

Hallo Jörg,

wenn aber die neue Tabelle weniger oder mehr Reihen bzw. Spalten wie die alte hat, funktioniert dies doch nicht.
Ich hab schon versucht die alten Daten mit neueTabelle.Load( alteTabelle.CreateDateReader()) zu übernehmen, aber dann werden die Daten nur hinten angehängt.
Ich bräuchte aber eine neue Datatable, die die entsprechenden Werte der alten Datatable an derselben Stelle enthält.Wobei man hier noch beachten muss, ob die neue Tabelle grösser (alte Tabellewerte können komplett übernommen werden) oder kleiner (es werden eben nur die Werte übernommen, die in die neue Tabellenstruktur reinpassen) ist.

Gruß Horst

22.11.2006 - 10:40 Uhr

Hallo,

in meiner Anwendung hab ich eine DataGridView, die mit einer DataTable verbunden ist.
Beim Ändern der Größe der DataTable versuche ich eine neue Tabelle zu erzeugen und dann die alten Werte der Tabelle in die neue zu kopieren

neueTabelle.Rows[k].ItemArray[l] = alteTabelle.Rows[k].ItemArray[l];

Diese nimmt jedoch die Werte nicht an. Woran kann das liegen ??

Gibt es dafür keine einfachere Lösung ??

Gruß Horst

13.11.2006 - 09:14 Uhr

Guten Morgen,

ich brauch den Index um anzuzeigen, wieviele Elemente ich habe .... also ein Quasi- Key.

09.11.2006 - 14:46 Uhr

Wie kann ich denn eine DataTable als Source verwenden ?? Muss ich dazu ein Dataset aufmachen ??

09.11.2006 - 11:43 Uhr

Hallo,

habe eine DataGridView mit einem Datatable-Adapter verbunden. In diesem ist die erste Spalte der Zeilen Index der per autoincrement hochgezählt wird. Das funktioniet auch soweit ganz gut. Leider wird aber beim Zeilenlöschen der Index mehr aktualisiert.

Nun meine Frage: Gibt es eine einfachere Möglichkeit für eine Index-Spalte bzw. wie bekomm ich es hin, dass sich der Index auch nach dem Löschen wieder stimmt ??

Gruß Horst

13.10.2006 - 13:13 Uhr

Hallo,

ich war auch ganz überrascht , zumal ich das Formular grade soweit fertig hatte.

Beim Hinzufügen eines weiteren Controls zeigt es dieses auf an. Dabei ist mir jettz aber aufgefallen, dass meine restlichen Controls nicht mit der Add-Methode an die Form gebunden werden.
Daran wird es wohl liegen.

Danke für die Hilfe und schönes WE noch 👍

13.10.2006 - 11:19 Uhr

Hallo,

habe ein Winforms Formular erstellt und heute mit Toolstrip, Tooltip etwas ausprobiert und diese anschließend wieder gelöscht. Jetzt seh ich im Formular aber keine Controls mehr, obwohl im Designer.cs-File noch alle Controls vorhanden sind. Wie bekomm ich meine Controls wieder angezeigt ??
Arbeite mit c# unter VS 2005

Gruß Horst