本文实例讲述了C#搜索TreeView子节点,保留父节点的方法。分享给大家供大家参考。具体如下:
C# 搜索TreeView子节点保留父节点:
?| 123456789101112131415161718192021222324252627282930313233 | private void selectNodeByName(string name){//重新生生成树,InitTvCatalog();//删除节点selectNode(tvCatalog.Nodes, name);}private void selectNode(TreeNodeCollection nodes, string name){bool del = true;for (int i = nodes.Count - 1; i >= 0; i--){TreeNode node = nodes[i];del = true;if (node.Nodes.Count != 0){selectNode(node.Nodes, name);}if (node.Text.StartsWith(name, StringComparison.OrdinalIgnoreCase)){del = false;}else{del = true;}if (del && node.Nodes.Count == 0){node.Remove();}}tvCatalog.ExpandAll();} |
WPF搜索TreeView子节点保留父节点:
?| 1234567891011121314151617181920212223242526272829303132333435363738 | private void selectNodeByName(string name){//重新生生成树,method = new Common.PublicMethod();method.TreeViewLoad();//删除节点selectNode(RegimeSetting.Common.StaticVariables.treeView.Items, name);method = null;}private void selectNode(ItemCollection nodes, string name){bool del = true;for (int i = nodes.Count - 1; i >= 0; i--){TreeViewItem node = nodes[i] as TreeViewItem;del = true;if (node.Items.Count != 0){selectNode(node.Items, name);}if (node.Header.ToString().StartsWith(name, StringComparison.OrdinalIgnoreCase)){del = false;}else{del = true;}if (del && node.Items.Count == 0){if ((node.Parent as TreeViewItem) != null)(node.Parent as TreeViewItem).Items.Remove(node);else(node.Parent as TreeView).Items.Remove(node);}}(RegimeSetting.Common.StaticVariables.treeView.Items[0] as TreeViewItem).IsExpanded = true;} |
希望本文所述对大家的C#程序设计有所帮助。








发表评论
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。