TreeNode를 만들 때 한 Node의 Name을 Unique하게 유지시키는 것을 권장한다.
TreeNode 클래스의 메소드 중 ContainKey를 사용하여 특정 Key를 가지는 Node를 찾고자 할 때, ContainKey는 Node의 Name을 Key로 비교하기 때문이다.
ContainKey의 경우는 해당 Key를 가지는 Node의 존재 유무만을 확인한다.
만약 특정 Key를 가지는 모든 Node를 찾고자 한다면 메소드 Find를 쓰면 된다.
TreeNode treeNode = new TreeNode(); treeNode.Nodes.Find("aaa", true); // treeNode 의 하위 노드 중 키가 "aaa"인 모든 Node를 반환한다. // 이때는 TreeNode[] 로 반환한다. // 두번째 파라미터가 false 이면 바로 밑의 하위노드에서만 검색한다.
각 노드를 테스트하는 재귀 프로시저(C# 및 C++에서는 재귀 메서드)를 만듭니다.
프로시저를 호출합니다.
다음 예제에서는 각 TreeNode 개체의 Text 속성을 인쇄하는 방법을 보여 줍니다.
private void PrintRecursive(TreeNode treeNode) { // Print the node. System.Diagnostics.Debug.WriteLine(treeNode.Text); MessageBox.Show(treeNode.Text); // Print each node recursively. foreach (TreeNode tn in treeNode.Nodes) { PrintRecursive(tn); } } // Call the procedure using the TreeView. private void CallRecursive(TreeView treeView) { // Print each node recursively. TreeNodeCollection nodes = treeView.Nodes; foreach (TreeNode n in nodes) { PrintRecursive(n); } }
Designed by sketchbooks.co.kr / sketchbook5 board skin
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5