| |

VB.NET - FortgeschritteneRe: Textbox Databindung | |  | Autor: derfynn | Datum: 19.01.16 18:30 |
| Vielen Dank für den Tipp.
Mit BindingSource sieht das ganze im Code schon besser aus, und ich kann mit deinem Tipp natürlich auch die TB aktualisieren aber das kann ja nicht die Lösung sein
Also nochmal, da ich aus den Foren mitbekomme, dass diese Frage öfters unbeantwortet blieb oder quick&dirty gelöst werden musste.
Ich hab ne Textbox und ne Datasource. Bei letzterem völlig egal ob Tabelle, DB oder nur eine row/zeile, also Zelle. In meinem Fall EIN einziger wert (Tabelle mit einer spalte und einer zeile)
Durch das Binding dachte ich in beiden richtungen die werte zu synchronisieren.
Das klappt ja auch aber wenn ich die Textbox.text eigenschaft im code oder LIVE (beim tippen) ändere, dann ändert sich zwar der wert in der Tabelle auch, ABER es wird kein Ereignis gefeuert von der gebunden Datasource. Weder rowchange an der table, noch member/list etc. change an der bindingsouce....
Anbei noch mal ein textcode. wie gesagt die tabelle wird in beide richtungen aktualisiert (entweder beim tippen in textbox, oder bei veränderung im code der tabelle) aber keins der ereignisse wird gefeuert, da ich ja eine änderung im textfeld nicht abfangen möchte, sondern eine änderung in der gebundenen tabelle
Private Sub bSourceSynch()
'm_dt.AcceptChanges()
Dim bs As New BindingSource
Dim VornameCol As New DataColumn("P_Vorname", Type.GetType( _
"System.String"), "")
Dim row As DataRow
m_dt.Columns.Add(VornameCol)
row = m_dt.NewRow()
m_dt.Rows.Add(row)
bs.DataSource = m_dt
tbMDT.DataBindings.Add(New Binding("Text", bs, "P_Vorname", True))
End Sub
Private Sub OnCurrentChangeBindingDataSource(ByVal sender As Object, e As _
System.EventArgs) Handles bs.CurrentChanged
Debug.Print("current Changed --- " & m_dt.Rows(0).Item( _
"P_Vorname").ToString)
End Sub
Private Sub OnCurrentItemChangeBindingDataSource(ByVal sender As Object, e _
As EventArgs) Handles bs.CurrentItemChanged
Debug.Print("current item Changed --- " & m_dt.Rows(0).Item( _
"P_Vorname").ToString)
End Sub
Private Sub OnDataMemberChangeBindingDataSource(ByVal sender As Object, e _
As EventArgs) Handles bs.DataMemberChanged
Debug.Print("´Data Member Changed --- " & m_dt.Rows(0).Item( _
"P_Vorname").ToString)
End Sub
Private Sub OnDataSourceChangeBindingDataSource(ByVal sender As Object, e _
As EventArgs) Handles bs.DataSourceChanged
Debug.Print("DataSource Changed --- " & m_dt.Rows(0).Item( _
"P_Vorname").ToString)
End Sub
Private Sub OnDataSourceListChangeBindingDataSource(ByVal sender As Object, _
e As EventArgs) Handles bs.ListChanged
Debug.Print("DataSource list Changed --- " & m_dt.Rows(0).Item( _
"P_Vorname").ToString)
End Sub |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevZIP40 Pro DLL 
Zippen und Unzippen wie die Profis!
Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|