0
我有一个WinForms的TreeView控件,允许您浏览对象层次结构。顺便说一下,对象之间有一些循环引用。如何取消WinForms TreeView ExpandAll?
我没有问题让用户导航循环引用,但我想阻止执行'*'按键或ExpandAll()命令。
你如何去做这件事?
我有一个WinForms的TreeView控件,允许您浏览对象层次结构。顺便说一下,对象之间有一些循环引用。如何取消WinForms TreeView ExpandAll?
我没有问题让用户导航循环引用,但我想阻止执行'*'按键或ExpandAll()命令。
你如何去做这件事?
对于ExpandAll方法,您不能像处理递归调用Expand和它的非虚拟一样,因此您甚至无法覆盖它。
作为防止“*”键,你可以连接到树视图的onKeyDown事件并使用下面的代码取消键:
private void treeView1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Multiply)
{
e.Handled = true;
e.SuppressKeyPress = true;
}
}
作为一种安全防护装置,你可以看出来的递归在您的控制器/演示者/视图模型,并且只允许一定数量的递归,例如4.