Tag property kan man använda för att lagra egen information i en treeview node. Men hur gör man om man skulle vilja lagra tre olika sorters information? Du kan ju lagra dem med en separator: I stället för att sätta textsträngar så häng på riktiga objekt som håller i den data som du är intresserad av. Sedan kan du ju kolla vilken typ objektet har och göra vad som passar för det objektet.Tag för Treeview node
Hittade någonting om "Derived Node" på msdn, men jag hade lite svårt att förstå hur det gick till (jag är ingen världsmästare i VB). Kan det vara en lösning?
Skriva gärna lite kodexempel för att få mig på rätt spår. Sv: Tag för Treeview node
<code>
Node.Tag = strName & vbCrLf & strAdress & vbCrLf & strTelefon
</code>
Sedan plockar du ute det med Split functionen:
<code>
Dim Data() as String
Data = Split(Node.Tag, vbCrLf)
strName = Data(0)
strAdress = Data(1)
strTelefon = Data(2)
</code>
Annars kan du skapa en klass som lagrar dina värden och spara klasserna i en collection med samma nyckel. Sv: Tag för Treeview node
Funkar bra i VB.NET :)
<code>
Public Class clsPerson
'Fult utan property set/get !
Public strNamn As String
Public intAlder As Integer
End Class
Public Class clsBil
'Fult utan property set/get !
Public strReg As String
Public strArsmodell As Integer
End Class
.....
'I sub som kolla noden!
if typeof aNode.tag is Person then
'code ...
textBox1.text = ctype(aNode.tag, clsPerson).strNamn
end if
if typeof aNode.tag is Bil then
textbox1.text = ctype(aNode.tag, clsBil).strReg
'code ...
end if
</code>