gebundene Textbox aktualisieren

01/08/2008 - 14:31 von Dirk Wölfel | Report spam
Hallo zusammen,

ich habe eine Textbox, die an ein Feld einer Datenbank gebunden ist.

Wenn ich jetzt das Form öffne, wird der Inhalt der Datenbankspalte
richtig angeizeigt. Nach dem Schließen des Fensters werden alle
Änderungen an der Textbox mittel bs.EndEdit und da.Update richtig in
die Datenbank geschrieben.

Was aber nicht funktioniert:
wenn ich wàhrend das erste Form geöffnet ist Änderungen an der DB
vornehme (also einen neuen Wert per Click auf einen Button in die
entsprechende Spalte schreibe), aktualisiert sich die Textbox nicht.
Wie kann ich die Textbox dazu veranlassen den neuen Inhalt der DB
darzustellen.

Vielen Dank,

Dirk
 

Lesen sie die antworten

#1 Peter Götz
01/08/2008 - 15:33 | Warnen spam
Hallo Dirk,

ich habe eine Textbox, die an ein Feld einer
Datenbank gebunden ist.



Die Textbox ist wohl eher an eine Column einer
DataTable gebunden bzw. über eine DataView
an eine solche.

Wenn ich jetzt das Form öffne, wird der Inhalt der
Datenbankspalte richtig angeizeigt.



Es gibt viele Möglichkeiten, dies zu bewerkstelligen.
Ich rate mal, Du führst irgendwo in Deinem Code
ein DataAdapter.Fill aus um damit den dahinterliegenden
SelectCommand auszuführen.


Nach dem Schließen des Fensters werden alle
Änderungen an der Textbox mittel bs.EndEdit und
da.Update richtig in die Datenbank geschrieben.



das "da" bei da.Update ist Dein DataAdapter?

Was aber nicht funktioniert:
wenn ich wàhrend das erste Form geöffnet ist
Änderungen an der DB vornehme (also einen
neuen Wert per Click auf einen Button in die
entsprechende Spalte schreibe),



In welche Spalte?
Eine Spalte einer DataRow (DataRow.Item) Deiner DataTable?

aktualisiert sich die Textbox nicht.



Wenn Du in die DataTable, an welche Deine Textbox
gebunden ist schreibst, sollte sich der Inhalt der
Textbox schon àndern.
Schreibst Du dagegen den geànderten Wert über
einen hier bisher nicht bekannten Weg in eine
Tabelle Deiner Datenbank, dann bekommt Deine
Textbox davon natürlich nichts mit.

Wie kann ich die Textbox dazu veranlassen den
neuen Inhalt der DB darzustellen.



Du musst den betr. Datensatz aus der DB neu
einlesen.

Ich kann leider nur raten, dass Du vermutlich in
Deinen beiden Forms jeweils einen DataAdapter
hast, von denen jeder seine eigene DataTable
befüllt. In diesem Fall wissen die beiden DataTables
natürlich gar nichts voneinander und Änderungen an
der einen DataTable werden natürlich nicht ohne
weiteres in der anderen DataTable sichtbar.

Zweckmàssig wàre es, nur eine DataTable in der
einen Form zu halten und der anderen Form, von
welcher Du offenbar irgendwelche Änderungen ausführen
willst, einen Verweis auf die DataTable resp. den
zugehörigen DataAdater in der ersten Form zu geben.

Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen