2009-02-26 8 views
2

Die Desktop-Anwendung, die ich migriere, macht von einem Treeview-Steuerelement Gebrauch, und viele Aufrufe an TreeNode.FirstSibling, z.Migration von VB6 zu .NET gibt es eine äquivlaent Funktion für TreeNode.FirstSibling?

'UPGRADE_ISSUE: MSComctlLib.Node property tvTreeView.SelectedItem.FirstSibling was not upgraded. 
If tvTreeView.SelectedNode.FirstSibling.Index = 1 Then 
... 
End If 

Gibt es eine äquivalente Funktion?

+0

Im Angenommen VB6 hatte den Index des ersten Knotens 1 sein? (nicht auf Null basierend) Dann wäre die obige IF-Anweisung IMMER wahr? –

+0

Ich denke, du hast recht! Aber es ist nicht die einzige Verwendung davon, so bleibt das Problem selbst nach dem Entfernen dieser Art von Programmierfehlern .. Vielleicht hätte ich von Grund auf neu geschrieben werden müssen. – brasskazoo

+0

@Brass - Lesen Sie dies, wenn Sie darüber nachdenken, überschreiben http : //www.joelonsoftware.com/articles/fog0000000069.html –

Antwort

5

Nun ein Geschwister hat es einen Elternteil haben hat, so dass Sie

myTreeNode.Parent.FirstNode

tun könnten Oder Sie könnten

myTreeNode.Parent.Nodes[0]

EDIT tun: und für letzten Geschwister :

myTreeNode.Parent.LastNode

0

Ich könnte falsch liegen, aber ist nicht "FirstChild" oder FirstParent. Alternativ NextNode, der durch Geschwister iterieren sollte.