none
BindinContext.AddNew und CancelCurrentEdit Problem

    Frage

  • Guten Morgen Forum

     

    Ich schreibe gerade eine kleine Datenbank Applikation und arbeite hier mit einer BindingList. Diese List ist an ein DataGridView gebunden und zum Editieren habe ich eine Eingabemaske erstellt deren Controls an die Properties der BindingList (beinhaltet Objekte einer eigenen Klasse) gebunden sind. Zur Navigation nutze ich sowohl das DGV als auch zwei Buttons die die Position des Zeigers des BindingContext ++ und -- setzt. Nun mein Problem:

    Ich rufe per Button die Methode BindingContext[MeineList].AddNew auf, was soweit auch funktioniert. Der Liste wird ein neues Element hinzugefügt, die Eingabemaske wird geleert und im DGV wird eine neue Zeile angezeigt. Drücke ich nun die Positions-Buttons oder wähle einen anderen Datensatz aus, soll die Bearbeitung des neuen DS abgebrochen und die Zeile wieder entfernt werden. Wie bekomme ich das hin?

    //Neu Button 
    private void cmdNew_Click(object sender, EventArgs e)
    {
        //Erzeugt eines neuen Benutzers
        BindingContext[MeineList].AddNew();
        MeineKlasse obj = (UserManagement)BindingContext[MeineList].Current;
    }<br/><br/>//Position ändert sich<br/>private void BindingContext_PositionChanged(object sender, EventArgs e)<br/>{<br/>    //CurrentEdit abbrechen<br/>    //So wird der DS direkt wieder entfernt, verwende ich ein Flag welches bei cmdNew_Click gesetzt wird und hier geprüft wird, passiert gar nichts und der DS bleibt da<br/>    BindingContext[MeineList].CancelCurrentEdit();<br/>}
    

    Wo ist der Knoten, vielleicht kann mir von euch jemand helfen!!

    Gruß Jens :-)

     

    Dienstag, 5. Juli 2011 06:31