WriteXML speichert nicht aktuelle Spalte
-
System::Void speichernToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) { this->dataTable1->WriteXml("hallo.xml"); }
Hallo das speichern funktioniert auch, nur das Provlem ist er speichert nie die aktuelle spalte.
Mit dem DataGridView kann der Benutzer also die Zellen ändern. Nur das Problem ist, er geht im Menü auf Speichern und die aktuelle Zeile wird nicht gespeichert. Erst wenn man eine Zeile tiefer geht wird gespeichert. Quasi die von DataGridView neu generierte Zeile.
Wie kann ich das umgehen? Hab mich echt viel durchgelesen, finde mein Problem sonst nirgendswo
-
Ruf mal EndEdit auf.
-
Ja das hab ich auch schon gemacht, dann hört er im aktuellen Cell auf zu editieren. Aber wenn ich danach per WriteXML speicher gehts immernoch nicht. Erst wenn ich eine Zeile tiefer klicke in die Zeile oder eine Zelle.
EndEdit war auch direkt meine erste Idee!
Aber das Problem muss sich doch noch meheren hier gestellt haben?
-
Soviel ich weiss ist dies das bekannte Problem..ich entgegnete dem so dass ich vor dem Speichenr einfach den Fokus auf ein anderes Steuerelement verlegte (habe ich auch so irgendwo gelesen).
-
wie meinst du das - Fokus auf anderes Steuerelement?
Wäre nett wenn du das genauer erläuterstgruß Dingsda
-
Ich habe z.B. ein DataGridView und Textfelder und einen Button für die SUche auf einem Form. Da habe ich vor dem Speichern den Eingabefokus auf den Such-Button verlegt; kann jedes Steuerelement sein welches den Eingabefokus erhalten kann.
Probier es mal, vor der WriteXML-Methode z.B. searchButton.Focus() (resp. ->Focus). Damit ist dann dieser Button angewählt und das GridView schliesst die EIngaben ab
-
Vielen Lieben dank,
sowas hab ich gesuchtGruß Dingsda