Entwickler-Ecke

C# - Die Sprache - treeview:ContainsKey oder Find nur in begrenztem Bereich


frenchcancan - Do 17.03.11 11:37
Titel: treeview:ContainsKey oder Find nur in begrenztem Bereich
Hallo!
ich habe ein Treeview mit 3 Ebenen.
Die 4 obersten sind z. B. Node1,Node2,Node3,Node4
Dann möchte ich in einem bestimmten Node suche, ob ein childnode schon vorhanden ist.
Das Problem ist nur, dass die childnodes in allen Nodes gleich aufgebaut sind, also die gleichen Namen haben
Z. B. Node1 enthält childnode "service","operator" und "factory"
Node2 ebenso.
Wie kann ich die suche mit den Methoden Containskey oder Find nur auf Node1 begrenzen? ohne den gesamten Baum zu durchsuchen?

Danke für Eure Hilfe
frenchcancan


Kha - Do 17.03.11 11:49

Find und ContainsKey sind ja keine Methoden von TreeView, sondern von TreeNodeCollection. Und diese Klasse taucht nicht nur als Wurzel auf, denk noch einmal drüber nach ;) .


Th69 - Do 17.03.11 12:03

Hi,

du rufst einfach explizit für den Node1 die ContainsKey()-Methode auf (diese ist ja in der TreeNodeCollection-Klasse definiert und nicht generell in der TreeView-Klasse), d.h.

C#-Quelltext
1:
bool contains = node1.Nodes.ContainsKey("service");