.net中TreeView使用方法小结(1)
在新项目的开发中,TreeView的作用很重要,这两天好好的学习了一下treeview的使用方法。
这篇文章主要关注TreeView带有CheckBox的情况。
在TreeView中点击CheckBox触发的函数如下:
private void treeView1_AfterCheck(object sender, TreeViewEventArgs e) { }
在这个事件中选中,或者取消的那一个节点为:
TreeNode node = e.Node;
使用TreeView控件要经常使用到递归算法。下面举两个例子:
窗体如下:
- 选中父节点,则子节点也全部选中
private void treeView1_AfterCheck(object sender, TreeViewEventArgs e) { TreeNode node = e.Node; if (node.Checked) { SetChildNodesState(e.Node); } } private void SetChildNodesState(TreeNode ParentNode) { if (ParentNode.Nodes != null) { foreach (TreeNode node in ParentNode.Nodes) { node.Checked = true; SetChildNodesState(node); } } }
- 取消选中子节点,则父节点也取消选中
private void treeView1_AfterCheck(object sender, TreeViewEventArgs e) { TreeNode node = e.Node; if (node.Checked == false) { SetParentNodeState(e.Node); } } private void SetParentNodeState(TreeNode ChildNode) { if (ChildNode.Parent != null) { ChildNode.Parent.Checked = false; SetParentNodeState(ChildNode.Parent); } }
未完待续
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。