我如何在 WinForm TreeView 中限制不 select 父节点

how do i restrict not to select parent node in WinForm TreeView

winform我要restrict only select child nodesnot 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();
    }

或者通过代码在树加载后分配处理程序。