【发布时间】:2018-04-05 08:57:33
【问题描述】:
我正在使用TreeView 控件列出我的所有菜单,以便我可以向每个用户授予访问权限。当用户检查一个或多个childnode 时,我将如何强制parent node 到check = true?
当parent node 被选中时,我正在使用下面的代码来检查/取消选中所有child nodes。
private void treeView_AfterCheck(object sender, TreeViewEventArgs e)
{
if (e.Action != TreeViewAction.Unknown)
{
if (e.Node.Nodes.Count > 0)
{
CheckAllChildNodes(e.Node, e.Node.Checked);
}
}
}
private void CheckAllChildNodes(TreeNode treeNode, bool nodeChecked)
{
foreach (TreeNode node in treeNode.Nodes)
{
node.Checked = nodeChecked;
if (node.Nodes.Count > 0)
{
this.CheckAllChildNodes(node, nodeChecked);
}
}
}
【问题讨论】: