[vb.net] DataGridView with Binding Xml-Database without Designer I

[vb.net] DataGridView with Binding Xml-Database without Designer I

exc jdbi (exc-jdbi)

55 лет назад

1,084 Просмотров

Datagridview with Binding Xml-Database without Designer I

Das Dataset enthält eine m:n-Beziehung. Beim Einlesen der Xml in das Dataset, müssen bestimmte Sachen beachtet werden.

Dieses Beispiel ist einfach gehalten, und auch für Anfänger gut nachvollziehbar.

Rückspeicherung bei Veränderung der Daten im DatagridView, werden hier noch nicht beachtet.

Das würde mit dieser Funktion gehen. Einfach in die Form1 einfügen:
Private Sub CellEndEditDgv(sender As System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvPersonen.CellEndEdit, dgvRolle.CellEndEdit, dgvRollePersonenRolle.CellEndEdit, dgvPersonenPersonenRolle.CellEndEdit
Me.dgvRolle.Update() : Me.dgvRolle.EndEdit()
Me.dgvPersonen.Update() : Me.dgvPersonen.EndEdit()
Me.dgvRollePersonenRolle.Update() : Me.dgvRollePersonenRolle.EndEdit()
Me.dgvPersonenPersonenRolle.Update() : Me.dgvPersonenPersonenRolle.EndEdit()
Call Save()
End Sub


Die Routine für das Generieren der Daten in das Dataset. Wie gemäss Film an den entsprechenden Ort einfügen:
Private Sub GenerateData()
Dim dtDate As DateTime = Nothing
With DsPersonenRolle
.Clear()
For aa1 As Integer = 0 To 6
dtDate = New DateTime(620000000000000000 + 1000000000000000 * aa1)
.Personen.AddPersonenRow("Vorname_" & aa1, "Nachname_" & aa1.ToString, dtDate, CUInt((Date.Now.Year - dtDate.Year)))
Next
For aa1 As Integer = 0 To 6
.Rolle.AddRolleRow("Applikation_" & aa1.ToString, "Entwickler_" & aa1.ToString, "Designer_" & aa1.ToString, "Produktmanager_" & aa1.ToString, "Projektmanager_" & aa1.ToString)
Next
Dim iPR As Integer = 0
For iPers As Integer = 0 To 3
For iRoll = 2 To 6
Dim rwPers As dsPersonenRolle.PersonenRow = .Personen(iPers)
Dim rwRoll As dsPersonenRolle.RolleRow = .Rolle(iRoll)
Dim name As String = String.Join("_", "PersonenRolle_" & iPR.ToString, iPers, iRoll)
Dim gehalt As Decimal = 1000 + CDec(iPers * iRoll) / 100
.PersonenRolle.AddPersonenRolleRow(rwPers, rwRoll, name, gehalt)
iPR += 1
Next
Next
For iPers = 2 To 6
For iRoll As Integer = 0 To 3
Dim rwPers As dsPersonenRolle.PersonenRow = .Personen(iPers)
Dim rwRoll As dsPersonenRolle.RolleRow = .Rolle(iRoll)
Dim name As String = String.Join("_", "PersonenRolle_" & iPR.ToString, iPers, iRoll)
Dim gehalt As Decimal = 1000 + CDec(iPers * iRoll) / 100
.PersonenRolle.AddPersonenRolleRow(rwPers, rwRoll, name, gehalt)
iPR += 1
Next
Next
End With
End Sub

Freundliche Grüsse

exc-jdbi

Тэги:

#DataGridView #Binding #Xml-Database #Xml #Database_(Software_Genre)
Ссылки и html тэги не поддерживаются


Комментарии: