DataBinding und Textbox

24/06/2008 - 10:39 von Frank Schneider | Report spam
Hallo zusammen,
ich habe eine Textbox an eine Datenquelle in der Form:
tbBrutto.DataBindings.Add("Text", this.vertragBS, "BRUTTO");
gebunden.
Wenn nun der entsprechende Datensatz einen Wert in die Textbox reinschreibt,
kann ich diesen Wert prima auf irgendeinen anderen Wert àndern und in die
Datenquelle übernehmen. Wenn ich den dargestellten Wert markiere und lösche
und anschließend mit der TAB-Taste das Feld verlasse, dann erscheint über
irgendeinen Automatismus der alte Wert wieder in der Textbox. Ich habe
keinerlei Eventhandling in der Textbox und es ist eine "Standard"-Textbox,
die ich direkt von der Toolbox auf die Form gezogen habe und es existiert
lediglich diese eine Zeile Code.
Ich bin für jeden Hinweis dankbar.
 

Lesen sie die antworten

#1 Elmar Boye
25/06/2008 - 17:41 | Warnen spam
Hallo Frank,

Frank Schneider schrieb:
Hallo zusammen,
ich habe eine Textbox an eine Datenquelle in der Form:
tbBrutto.DataBindings.Add("Text", this.vertragBS, "BRUTTO");
gebunden.



Um die Frage vollstàndig beantworten zu können, müsste man wissen,
von welchem Typ "vsVertragBS" ist - eine BindingList<T>, DataSet
oder eine eigene Konstruktion - und bei letzterem welche Schnittstellen
sie implementiert (INotifyPropertyChanged, IBindingList(View) etc..

Und von welchem Datentyp ist "BRUTTO"?

Wenn nun der entsprechende Datensatz einen Wert in die Textbox reinschreibt,
kann ich diesen Wert prima auf irgendeinen anderen Wert àndern und in die
Datenquelle übernehmen. Wenn ich den dargestellten Wert markiere und lösche
und anschließend mit der TAB-Taste das Feld verlasse, dann erscheint über
irgendeinen Automatismus der alte Wert wieder in der Textbox.



Das Verhalten für das Übertragen wird durch die Eigenschaften
ControlUpdateMode und DataSourceUpdateMode der Binding Klasse gesteuert:
<URL:http://msdn.microsoft.com/de-de/lib...g.aspx>

Beim Übertragen wird dabei versucht den Wert entsprechend dem Typ
der Eigenschaft umzuwandeln, wobei die TypeConverter respektive
die TryParse Methoden zu Einsatz kommen. Die Umwandlung erfolgt
entsprechend der eingestellten Kultur (wichtig vor allem bei
Dezimalpunkt vs. -komma, Tausendertrennzeichen).
Speziell wenn noch Formatierungen verwendet werden, ist das nicht
immer möglich (auch wenn da oben nichts davon steht).

Schlàgt die Umwandlung fehl, so wird der alte Wert wieder eingetragen.

Gruß Elmar

Ähnliche fragen