Hallo,
ich habe 4 Checkboxen an eine DataRowView gebunden. Die Checkboxen kommen nicht mit DBNull-Werten zurecht, deshalb habe ich als Defaultwerte 'False' vorgegeben. Eigentlich funktioniert es auch richtig, nur reagieren die Checkboxen nicht immer auf jedes Anklicken. Manchmal muss ich eine Checkbox 2-5 mal anklicken, bevor sie den Zustand wechselt. Merkwürdig ist auch, dass manchmal der OK-Button des Formulars dann öfters geklickt werden muss, bevor das Formular geschlossen wird.
Code der Hauptform:
Private Sub btnArtikelÄndern_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles btnArtikelÄndern.Click
Me.Cursor = Cursors.WaitCursor
Dim f As New frmArtikelBearb
f.DatenÄndern(cm)
f.Dispose()
Dim drv As DataRowView = CType(cm.Current, DataRowView)
pb.Image = clsMain.GetImageFromDataRowView(drv, "bild")
Me.Cursor = Cursors.Default
End Sub Code der Detailform:
Public Sub DatenÄndern(ByVal cm As CurrencyManager)
Try
If cm.Position < 0 Then Exit Sub
drv = CType(cm.Current, DataRowView)
txtbID.DataBindings.Add("Text", drv, "id")
txtbNr.DataBindings.Add("Text", drv, "nr")
txtbBez.DataBindings.Add("Text", drv, "bez")
txtbProgr.DataBindings.Add("Text", drv, "prognr")
txtbKomm.DataBindings.Add("Text", drv, "komm")
pb.Image = clsMain.GetImageFromDataRowView(drv, "bild")
txtbBand1.DataBindings.Add("Text", drv, "vband1")
txtbBand2.DataBindings.Add("Text", drv, "vband2")
chbD1.DataBindings.Add("Checked", drv, "duese1")
chbD2.DataBindings.Add("Checked", drv, "duese2")
chbD3.DataBindings.Add("Checked", drv, "duese3")
chbD4.DataBindings.Add("Checked", drv, "duese4")
txtbVerz.DataBindings.Add("Text", drv, "tverz")
txtbDauer.DataBindings.Add("Text", drv, "tdauer")
txtbProSchwenk.DataBindings.Add("Text", drv, "nschwenk")
txtbProStange.DataBindings.Add("Text", drv, "nmul")
txtbPlus.DataBindings.Add("Text", drv, "nadd")
If Me.ShowDialog = DialogResult.OK Then
clsMain.SetImageToDataRowView(pb.Image, drv, "bild")
cm.EndCurrentEdit()
Else
cm.CancelCurrentEdit()
End If
Catch ex As Exception
eh.Show(ex, , "Fehler beim Ändern von Artikeldaten")
End Try
End SubDie Datenbank ist übrigens MySQL V 4.1. Die DataType der Spalte ist TINYINT (Byte). Hab's auch schon mit Integer probiert, geht auch nicht.
Kennt jemand dieses Phänomen? Hat jemand 'ne Idee wie man das verhindern kann, oder woran es liegen könnte?
Vielen Dank.....
Manni |