C#Windows窗体TreeView在LabelEdit之后排序

时间:2009-04-30 19:45:06

标签: c# winforms sorting treeview

在树中编辑节点的标签后,我尝试求助节点将更新的项目放在正确的位置。我通过在AfterLabelEdit事件处理程序中调用.Sort来执行此操作,这会导致无限循环。

如何在更改标签后在树视图中求助节点?

2 个答案:

答案 0 :(得分:9)

将BeginInvoke与MethodInvoker委托一起使用,而不是声明自己的委托。

private void treeView1_AfterLabelEdit(object sender, NodeLabelEditEventArgs e)
{
    treeView1.BeginInvoke(new MethodInvoker(treeView1.Sort));
}

答案 1 :(得分:7)

使用BeginInvoke:

    delegate void sort();

    private void treeView1_AfterLabelEdit(object sender, NodeLabelEditEventArgs e)
    {
        treeView1.BeginInvoke(new sort(treeView1.Sort));
    }