Was ich behauptet habe stimmt ohne Zweifel. Du hast viel zu wenig Angaben gemacht wie du alles machst um sonst genaueres zu deinem Problem zu sagen. Wie du an die Combo bindest, was du mit "verändert sich das Dataset" wirklich meinst usw. Wir können leicht deinen Code testen, ganz leicht angepasst für fehlende Methoden usw:
Dim ds As New DataSet("Test")
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
'ID | Username | Passwort
'----------------------------
'1 | Peter | abcdef
'2 | Paul | qwertz
'3 | PaulPeter | blubb
' Neue Zeile
'1 | Test | 12345
Dim dt As New DataTable("Users")
ds.Tables.Add(dt)
Dim dc As DataColumn = dt.Columns.Add("ID", GetType(Integer))
dc.AutoIncrement = True
dc.AutoIncrementSeed = 1
dt.Columns.Add("Username", GetType(String))
dt.Columns.Add("Passwort", GetType(String))
Dim dr As DataRow
dr = dt.NewRow()
dr("Username") = "Peter"
dr("Passwort") = "abcdef"
dt.Rows.Add(dr)
dr = dt.NewRow()
dr("Username") = "Paul"
dr("Passwort") = "qwertz"
dt.Rows.Add(dr)
dr = dt.NewRow()
dr("Username") = "PaulPeter"
dr("Passwort") = "blubb"
dt.Rows.Add(dr)
For Each dr1 As DataRow In ds.Tables("Users").Rows
Debug.WriteLine(dr1("ID") & " " & dr1("Username") & " " & dr1( _
"Passwort"))
Next
FuegeEinZeile("Test", "12345", "", "")
For Each dr1 As DataRow In ds.Tables("Users").Rows
Debug.WriteLine(dr1("ID") & " " & dr1("Username") & " " & dr1( _
"Passwort"))
Next
End Sub Private Sub FuegeEinZeile(ByVal strUser As String, ByVal strPw _
As String, ByVal strGruppe As String, ByVal strAbt As String)
Try
Dim row As DataRow = ds.Tables("Users").NewRow()
row("Username") = strUser
row("Passwort") = strPw
'row("Gruppe") = strGruppe
'row("Abteilung") = strAbt
ds.Tables("Users").Rows.Add(row)
MessageBox.Show("Neuer Datensatz hinzugefügt!" _
, "Neuer Datensatz", MessageBoxButtons.OK, _
MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show(ex.Message, "Fehler", MessageBoxButtons.OK, _
MessageBoxIcon.Exclamation)
End Try
End Sub Die Tabelle wie beschrieben wird angelegt (immerhin die ersten drei Spalten), die drei Rows werden eingefügt, und der Inhalt ausgegeben. Das sieht im Ausgabefenster so aus:
1 Peter abcdef
2 Paul qwertz
3 PaulPeter blubb Dann wird FuegeEinZeile() aufgerufen und der Inhalt nochmal ausgegeben, was dann so aussieht:
1 Peter abcdef
2 Paul qwertz
3 PaulPeter blubb
4 Test 12345 Alles funktioniert eben bestens.
________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist |