OK das ist sicher schon mehrmals mein Anliegen gewesen, dennoch muss ich noch mal nachfragen.
wie kann ich das TreeView bei Mouseklick auf Node die dazugehörigen Daten anzeigen lassen!
oder über die Eingabemaske s. Bild Datendetails hinzufügen, bearbeiten?
Anzeigen:
https://picload.org/view/dlciilil/liefermangel_details_anzeigen.png.html
Erfassen, bearbeiten, entfernen:
https://picload.org/view/dlciilpl/liefermangelerfassen.png.html
Private Sub dtxInitialisieren()
'(nur benötigte Spalten)
dtx.TableName = "LMMaßnahme"
With dtx.Columns
.Add("ID", GetType(Integer)) 'falls eindeutige Schlüssel
' benötigt werden
.Add("Maßnahmedatum", GetType(Date))
.Add("Maßnahme", GetType(String)) 'eventuell Gettype(String)
.Add("Verantwortlich", GetType(String))
.Add("TerminStart", GetType(Date))
.Add("TerminEnde", GetType(Date))
.Add("erledigt", GetType(Date))
.Add("abgearbeitet", GetType(Boolean))
End With
'Frage: benötige ich diese Zeile noch?
dtx.PrimaryKey = _
New DataColumn() {dtx.Columns("ID")} 'Schlüssel ggf. einrichten
End Sub Private Sub init_TVLiefermangelverwaltung()
Dim Rootnode As TreeNode = Nothing
Trv.Nodes.Clear()
'Treeview-Knoten gemäß Datarelations erstellen
Dim nd_i, nd_k As TreeNode
Dim row_i, row_k As DataRow 'aktuelle Datarow in Schleife
Dim rel_i, rel_k As String 'Name der Datarelation
Dim col_i, col_k As Integer 'Index der anzuzeigenden Spalte im Treeview
Dim val_i, val_k As String 'anzuzeigender Daten-Wert im Treeview
For i As Integer = 0 To DSABLAGE.Tables("LMMELDER").Rows.Count - 1
row_i = DSABLAGE.Tables("LMMELDER").Rows(i)
col_i = 1
val_i = row_i(col_i).ToString
nd_i = GetNode(Trv.Nodes, val_i)
rel_i = DSABLAGE.Relations( _
"LMMELDER_LMINFORMATION").RelationName
For k As Integer = 0 To row_i.GetChildRows(rel_i).Length - 1
row_k = row_i.GetChildRows(rel_i)(k)
col_k = 2
val_k = row_k(col_k).ToString
nd_k = GetNode(nd_i.Nodes, val_k)
rel_k = DSABLAGE.Relations( _
"Liefermangel_Liefermangelmaßnahme").RelationName
'Speichern einer Referenz des Childrows-Array im Knoten
nd_k.Tag = row_k.GetChildRows(rel_k)
'zusätzlich: Text des Knotens erweitern
nd_k.Text = "Liefermangel: " & val_k
nd_k.ImageIndex = 1
nd_k.SelectedImageIndex = 3
Next k
Next i
Trv.ExpandAll()
End Sub |