两个事件都写上,这样无论点图标还是文字,都可以
TreeView1_SelectedNodeChanged
TreeView1_TreeNodeExpanded
其中关键是找
TreeNodeCollection
/// <summary> /// 点击文字展开与收缩 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) { TreeView tv = (TreeView)sender; TreeNode tn = tv.SelectedNode; TreeNodeCollection tnc = null; if (tn.Parent == null) { tnc = tv.Nodes; } else { tnc = tn.Parent.ChildNodes; } foreach (TreeNode node in tnc) { if (node == tn) { node.Expanded = true; } else { node.CollapseAll(); } } } /// <summary> /// 点击图标展开与收缩 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void TreeView1_TreeNodeExpanded(object sender, TreeNodeEventArgs e) { TreeNodeCollection ts = null; if (e.Node.Parent == null) { ts = ((TreeView)sender).Nodes; } else { ts = e.Node.Parent.ChildNodes; } foreach (TreeNode node in ts) { if (node != e.Node) { node.Collapse(); } } }
TreeView节点收缩与展开(二)
最新推荐文章于 2022-04-07 16:39:48 发布