treeview 节点 父节点 递归
来源:互联网 发布:mac 7z解压软件下载 编辑:程序博客网 时间:2024/05/17 06:10
//取消节点选中状态之后,取消所有父节点的选中状态
private void setParentNodeCheckedState(TreeNode currNode, bool state)
{
TreeNode parentNode = currNode.Parent;
parentNode.Checked = state;
if (currNode.Parent.Parent != null)
{
setParentNodeCheckedState(currNode.Parent, state);
}
}
//选中节点之后,选中节点的所有子节点
private void setChildNodeCheckedState(TreeNode currNode, bool state)
{
TreeNodeCollection nodes = currNode.Nodes;
if (nodes.Count > 0)
foreach (TreeNode tn in nodes)
{
tn.Checked = state;
setChildNodeCheckedState(tn, state);
}
}
private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
if (e.Node.Checked)
{
//取消节点选中状态之后,取消所有父节点的选中状态
setChildNodeCheckedState(e.Node, true);
}
else
{
//取消节点选中状态之后,取消所有父节点的选中状态
setChildNodeCheckedState(e.Node, false);
//如果节点存在父节点,取消父节点的选中状态
if (e.Node.Parent != null)
{
setParentNodeCheckedState(e.Node, false);
}
}
}
private void setParentNodeCheckedState(TreeNode currNode, bool state)
{
TreeNode parentNode = currNode.Parent;
parentNode.Checked = state;
if (currNode.Parent.Parent != null)
{
setParentNodeCheckedState(currNode.Parent, state);
}
}
//选中节点之后,选中节点的所有子节点
private void setChildNodeCheckedState(TreeNode currNode, bool state)
{
TreeNodeCollection nodes = currNode.Nodes;
if (nodes.Count > 0)
foreach (TreeNode tn in nodes)
{
tn.Checked = state;
setChildNodeCheckedState(tn, state);
}
}
private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
if (e.Node.Checked)
{
//取消节点选中状态之后,取消所有父节点的选中状态
setChildNodeCheckedState(e.Node, true);
}
else
{
//取消节点选中状态之后,取消所有父节点的选中状态
setChildNodeCheckedState(e.Node, false);
//如果节点存在父节点,取消父节点的选中状态
if (e.Node.Parent != null)
{
setParentNodeCheckedState(e.Node, false);
}
}
}
- treeview 节点 父节点 递归
- treeview递归绑定节点
- TreeView递归添加节点
- 递归获取treeview选中父节点的所有子节点
- TreeView(一次性递归所有节点)
- TreeView(一次性递归所有节点)
- TreeView递归添加节点详解
- TreeView 递归添加子节点
- C#递归遍历TreeView节点
- 循环递归treeview节点树
- TreeView(1)(一次性递归所有节点)
- 用脚本递归遍历TreeView节点
- 递归为TreeView控件添加节点
- C#递归增加、删除树节点(TreeView)
- delphi 递归遍历TreeView树节点
- 递归获取当前节点的父节点
- TreeView的子节点和父节点级联选中,遍历TreeView并查找和选定节点
- 使用递归方法获得TreeView中CheckBox选中的节点
- 用openlayer是交互画一个点、线、面,执行回调函数
- 时间过的好快……
- sqlserver分布式存储过程
- 临近过年的一点感想
- 向大家推荐一个非常好用的JS日历控件My97DatePicker
- treeview 节点 父节点 递归
- 流年不利
- HDU 4028 The time of a day
- 文件加密解密
- 备注一些后续有用的信息
- 通过分区(Partition)提升MySQL性能
- 字库 TTC TTF
- 一个不错的shell 脚本教程
- Android4.0 Launcher 源码分析系列(一)