因为通过事件经常更新list,所有希望能有方法部分更新list,尽量不影响客户操作。。或者更新后设置客户选择的当前node,我试过FocusNode,不行

解决方案 »

  1.   

    if (TreeList.InvokeRequired)
                {
                    DisplayGrid dg = new DisplayGrid(UpdateEvent);
                    Invoke(dg,new object[]{sander,e});
                }
                else
                {
                   TreeList.DataSource = EntityList;                TreeList.SetFocusedNode(currentNode);
                }
      

  2.   


    因为你的TreeLists已经重新绑定数据源了 所以你要重新获取currentNode 
    所以在重新绑定数据源后 你需要根据节点的ID从新的树中找到 刚刚修改的节点 再TreeList.SetFocusedNode(currentNode);