C#搜索TreeView子节点,保留父节点的方法
本文实例讲述了C#搜索TreeView子节点,保留父节点的方法。分享给大家供大家参考。具体如下:
C#搜索TreeView子节点保留父节点:
privatevoidselectNodeByName(stringname) { //重新生生成树, InitTvCatalog(); //删除节点 selectNode(tvCatalog.Nodes,name); } privatevoidselectNode(TreeNodeCollectionnodes,stringname) { booldel=true; for(inti=nodes.Count-1;i>=0;i--) { TreeNodenode=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子节点保留父节点:
privatevoidselectNodeByName(stringname) { //重新生生成树, method=newCommon.PublicMethod(); method.TreeViewLoad(); //删除节点 selectNode(RegimeSetting.Common.StaticVariables.treeView.Items,name); method=null; } privatevoidselectNode(ItemCollectionnodes,stringname) { booldel=true; for(inti=nodes.Count-1;i>=0;i--) { TreeViewItemnode=nodes[i]asTreeViewItem; 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.ParentasTreeViewItem)!=null) (node.ParentasTreeViewItem).Items.Remove(node); else (node.ParentasTreeView).Items.Remove(node); } } (RegimeSetting.Common.StaticVariables.treeView.Items[0]asTreeViewItem).IsExpanded=true; }
希望本文所述对大家的C#程序设计有所帮助。