treeview 点击节点后“不收缩”(因为点部门节点后,所有的节点都收缩了,只看到公司这个根节点)怎么搞?
另外:打开一个部门节点后,其他所有打开的部门节点自动收缩
有 TreeView1_SelectedNodeChanged 事件
我做的一个功能是:
点+/-右边的公司或部门后,在 treeview 右边的 GridView 里显示相关的员工数据(这个实现了)
------解决方案--------------------------------------------------------
在节点展开时间里面进行处理
- C# code
private void tvDevice_BeforeExpand(object sender, TreeViewCancelEventArgs e) { if (e.Action != TreeViewAction.Unknown) { //这里循环折叠其余节点 } }
------解决方案--------------------------------------------------------
- C# code
protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) { //TreeView1.SelectedNode.ToggleExpandState(); TreeView1.CollapseAll(); TreeView1.SelectedNode.Expand(); TreeNode node = TreeView1.SelectedNode; while (node.Parent != null) { node.Parent.Expand(); node = node.Parent; } }
------解决方案--------------------------------------------------------
- C# code
protected void Treeview1_TreeNodeExpanded(object sender, TreeNodeEventArgs e) { if (e.Node.Depth != 0) { foreach (TreeNode item in Treeview1.Nodes) { if (e.Node.Value == item.Value) { item.Expand(); } else { item.Collapse(); } } } }