1. Wozu ist das gut?
'dt.Rows(1)("ShippedDate") = DBNull.Value 2. Wenn ich nachdem ich mein Proggie gestartet habe, meine Funktion zum neu laden der DB Daten aufrufe, bekomme ich einen Fehler, in der buildListBox1
Funktion zum Neu Laden der DB Daten:
Function RefillDS(ByVal intVariant As Integer)
Try
SqlConnection1.Open()
DsKunden1.Clear()
SqlDataAdapter1.Fill(DsKunden1.Akquisiteur)
SqlDataAdapter2.Fill(DsKunden1.Anrede)
SqlDataAdapter4.Fill(DsKunden1.Branche)
SqlDataAdapter5.Fill(DsKunden1.Kontakt)
SqlDataAdapter6.Fill(DsKunden1.Kunden)
SqlDataAdapter7.Fill(DsKunden1.Prioritaet)
SqlDataAdapter3.Fill(DsKunden1.Ansprechpartner)
SqlDataAdapter8.Fill(DsKunden1.Insolvent)
SqlConnection1.Close()
'SQL Connection(geschlossen)
Catch
MsgBox("Konnte SQL-Verbindung nicht herstellen" & vbCrLf & "Fehler:" & _
"" & Err.Description)
End Try
If intVariant = 0 Then
'Berechnungen für den ListBox Container
dtTemp = DsKunden1.Kontakt
dvTemp = dtTemp.DefaultView
cmTemp = Me.BindingContext(dvTemp)
'dt.Rows(1)("ShippedDate") = DBNull.Value
txtNotiz.DataBindings.Add(New Binding("Text", dvTemp, "Bemerkung"))
bTemp = New Binding("Text", dvTemp, "Datum")
txtDatum.DataBindings.Add(bTemp)
AddHandler Me.txtDatum.DataBindings(0).Format, AddressOf _
Me.FormatDate
End If
'CurrManager werden an DataViews gebunden
mobjCurrencyManager = CType(Me.BindingContext(dvKunden), _
CurrencyManager)
mobjCurrencyManager2 = CType(Me.BindingContext(dvAnsprechpartner), _
CurrencyManager)
mobjCurrencyManager3 = CType(Me.BindingContext(dvKontakte), _
CurrencyManager)
mobjCurrencyManager4 = CType(Me.BindingContext(dvAkquisiteure), _
CurrencyManager)
mobjCurrencyManager5 = CType(Me.BindingContext(dvBranchen), _
CurrencyManager)
EndEditCM()
Me.SqlDataAdapter1.Update(DsKunden1, "Akquisiteur")
Me.SqlDataAdapter4.Update(DsKunden1, "Branche")
Me.SqlDataAdapter3.Update(DsKunden1, "Ansprechpartner")
Me.SqlDataAdapter6.Update(DsKunden1, "Kunden")
Me.SqlDataAdapter5.Update(DsKunden1, "Kontakt")
NaviButtonControl()
NaviFeld()
buildListBox1()
End Function Wenn Refill(0) aufgerufen wird, ist es der erste Form-Load, wenn Refill(1) aufgerufen wird, ist es zum Refreshen der Daten da. So verhindere ich das die Controls nochmal gebunden werden.
Den Fehler bekomme ich in der buildListBox1 Funktion:
Private Sub buildListBox1()
Dim al As New ArrayList()
Dim drvTemp As DataRowView
For Each drvTemp In dvTemp
If drvTemp("Datum") Is DBNull.Value Then
al.Add(DateTime.MinValue.ToString("dd.MM.yyyy hh:mm"))
Else
al.Add(CDate(drvTemp("Datum")).ToString("dd.MM.yyyy hh:mm"))
End If
Next
lbKontakte.DataSource = al
lbKontakte.SelectedIndex = cmTemp.Position
End Sub Und zwar in der Zeile: lbKontakte.SelectedIndex = cmTemp.Position Die Fehlermeldung lautet:
Eine nicht behandelte Ausnahme des Typs 'System.ArgumentOutOfRangeException' ist in system.windows.forms.dll aufgetreten.
Zusätzliche Informationen: Das angegebene Argument liegt außerhalb des gültigen Wertebereichs.
If it was hard to code, it should be hard to read too. |