DevTrain Startseite SharePoint Camp ? In 5 Tagen zum SharePoint Profi!  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren



 

Forum: ADO.NET | Thema: DataBinding und Format/Parse Event, letzteres wird nich geraised | Von: Ronald Pelle ( 20.05.2005 17:54)

Hallo zsammen!

Ich habe einen DateTimePicker und davor eine Checkbox.
Sinn ist, das wenn die Checkbox disabled ist, NULL in die DB geschrieben werden soll. Andersherum, ist in der DB ein NULL Wert, wird die Checkbox disabled.
Das Format Event funktioniert einwandfrei, das Parse Event bekomme ich aber nicht ausgelöst.
Laut MSDN würde es ausgelöst :
*nach dem Validated Event des Controls ( bei mir gibbets nix zu validaten, aber egal, ich hab das Validated Event ausgelöst, nix passiert)
* nach der EndCurrentEdit Methode der BindingManagerbase. auch nix.
* eine Änderung des Current Objektes der BindingManagerBase.

Alle Bindings sind auf einen DataView.
Hier ist aller relevanter Code für dieses Binding:

Hier das Binding und der Currency Manager:

myCM = (CurrencyManager)BindingContext[Ergo.MainApp._DesignDB_SelDesignDV];


Binding bind = new Binding("Text", Ergo.MainApp._DesignDB._SelDesignDV, "Freigabe_Datum");
bind.Parse += new ConvertEventHandler(bind_Parse);
bind.Format += new ConvertEventHandler(bind_Format)
this.dTP_Freigabe.DataBindings.Add(bind);


Hier die Events:
private void bind_Format(object sender, ConvertEventArgs e)
{
if (e.Value == System.DBNull.Value)
this.chBx_Freigabe.Checked = false;
else
this.chBx_Freigabe.Checked = true;
}

private void bind_Parse(object sender, ConvertEventArgs e)
{

MessageBox.Show("Holla");
if (!this.chBx_Freigabe.Checked )
e.Value = System.DBNull.Value;
}

Und hier, in meiner Savefunktion der Aufruf der EndCurrentEdit (doppelt gemoppelt ich weiss) und der Upload der Daten....


BindingContext bc = this.BindingContext;
bc[Ergo.MainApp._DesignDB._SelDesignDV].EndCurrentEdit();
myCM.EndCurrentEdit();
Ergo.MainApp._DesignDB.UploadDataView(bc);


und letzere Upload Funktion sieht so aus:

public void UploadDataView(BindingContext bc)//
{
bc[selDesignDV].EndCurrentEdit();
OleDbCommandBuilder cb = new OleDbCommandBuilder(designDA);
try
{
designDA.Update(designDS, "Zeichnungen");
}
catch(Exception ex)
{
MessageBox.Show(ex.Message, "Fehler beim Upload der Daten - UploadDataView");
}
}


Alle anderen Datenupdates funktionieren einwandfrei, also glaub ich eher nicht, das der Fehler da liegt.
Das Format Event funktioniert wie gesagt ebenfalls.
Die MessageBox im Parse Event erscheint nicht (eine im Format Event war stets zu sehen, und Daten kommen in der DB auch nicht an....

Bin für jede Hilfe SEHR dankbar....



Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!

 Betreff:
 Nachricht: Den Beitrag finden Sie nun unter: http://beta.devtrain.de/foren Die Benutzerdaten und Foreninhalte von beta.devtrain.de und www.devtrain.de sind die selben.
Sie können sich dort sogar per RSS über neue Inhalte informieren lassen.
Bei Problemen bitte direkt Mail an asp [AT] ppedv.de.

 Signatur:

  



Login
Username:


Passwort:






Passwort vergessen?

Advanced Developers Conference vom 14.-15. Februar 2011

© Copyright 2003 ppedv AG