【发布时间】:2014-09-25 06:09:25
【问题描述】:
VS C# Winform 树视图: 我是初学者,感谢您的帮助。
我想取消选中先前选定节点的复选框。 该应用程序只允许用户选择具有子节点的节点。然后他们可以检查子节点。如果他们随后选择另一个父节点,则需要清除之前的复选框。
Parent1 有子节点 A、B 和 C Parent2 有子节点 X、Y 和 Z 如果选中Parent 1并勾选A、B、C,然后用户选择Parent2,则需要清除Parent 1的A、B、C复选框。
我尝试使用 TreeNode tnBeforeSelect = tvFileMan.SelectedNode; 在 beforeSelect 事件中捕获 SelectedNode;但是当我尝试在 after select 事件中使用它时,它在该上下文中不存在。我有一个全局变量类,但不知道如何添加树节点变量。我想我可以用类似的东西取消检查 afterCheck 事件。
foreach (TreeNode tn in tnBeforeSelect)
{
tnBeforeSelect.Nodes.Checked = false;
}
【问题讨论】:
-
除了在
foreach循环中选中的复选框之外,您不能只清除节点复选框吗? -
亚历克斯,这就是我想要做的。问题是该代码会是什么样子?具体来说,我如何引用我想取消选中的节点和子节点,因为它们不再被选中?