我如何在 WinForm TreeView 中限制不 select 父节点
how do i restrict not to select parent node in WinForm TreeView
在winform
我要restrict only select child nodes
not to select only parent node.
我试过像下面选中的父点击并显示消息框一样。
TreeNode node = treeView.SelectedNode;
while (node.Parent != null)
{
node = node.Parent;
}
A
+-B
+-C
Is there any other way to do so?
我希望用户能够 select B , C
但是当他 select A
我想显示像 please select child node
这样的弹出窗口
为什么使用 'winforms-to-web' 和 'node.js' 标签?
在 c# Winform 上,可能是这样的,处理 Treeview 的 AfterSelect 事件:
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
if (e.Node.Parent == null && e.Node.Nodes.Count>0){
MessageBox.Show("only child nodes must be selected", "warning");
treeView1.SelectedNode=e.Node.Nodes[0];
}
}
为了避免出现初始消息,您可以这样做
private void Form1_Load(object sender, EventArgs e)
{
//tree load
treeView1.SelectedNode = treeView1.Nodes[0].Nodes[0];
treeView1.ExpandAll();
}
或者通过代码在树加载后分配处理程序。
在winform
我要restrict only select child nodes
not to select only parent node.
我试过像下面选中的父点击并显示消息框一样。
TreeNode node = treeView.SelectedNode;
while (node.Parent != null)
{
node = node.Parent;
}
A
+-B
+-C
Is there any other way to do so?
我希望用户能够 select B , C
但是当他 select A
我想显示像 please select child node
为什么使用 'winforms-to-web' 和 'node.js' 标签?
在 c# Winform 上,可能是这样的,处理 Treeview 的 AfterSelect 事件:
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
if (e.Node.Parent == null && e.Node.Nodes.Count>0){
MessageBox.Show("only child nodes must be selected", "warning");
treeView1.SelectedNode=e.Node.Nodes[0];
}
}
为了避免出现初始消息,您可以这样做
private void Form1_Load(object sender, EventArgs e)
{
//tree load
treeView1.SelectedNode = treeView1.Nodes[0].Nodes[0];
treeView1.ExpandAll();
}
或者通过代码在树加载后分配处理程序。