获取点击的节点树视图C#winforms的文本

mjs*_*jsr 0 c# treeview winforms

我在c#中选择树视图中的节点文本时遇到困难,想法是获取被点击节点的文本,但问题是当我想抓住它时这样

MessageBox.Show(treeView1.SelectedNode.Text);
Run Code Online (Sandbox Code Playgroud)

所选节点是之前选择的节点,而不是我点击的实际节点,那么我如何首先选择我点击的节点然后在之后抓取他的文本?我认为解决方案是在我获取文本之前调用原始的nodeclick处理程序,但我不知道如何调用它

Han*_*ant 8

是的,当NodeMouseClick事件触发时,它尚未被选中.您应该使用AfterSelect事件.这确保了当用户使用键盘选择节点时它也可以工作.或者这样做:

    private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) {
        Console.WriteLine(e.Node.Text);
    }
Run Code Online (Sandbox Code Playgroud)

但请注意,BeforeSelect可以取消选择.