日期:2014-05-19  浏览次数:20990 次

关于treeview的更新问题
我在程序的主窗口(mainFrm)里添加了一个treeview控件:
      public   System.Windows.Forms.TreeView   treeView_port;

在相同的命名空间里又创建了一个类,它包含一个TreeNode的成员变量:
public   class   cListenerPort
{
          public   TreeNode   Listen_port_node;
          public   cListenerPort(MainFrm   mainFrm,int   port)//构造函数
          {
                  Listen_port_node   =   new   System.Windows.Forms.TreeNode(port.ToString());
                  _mainFrm=mainFrm;
            }
          ...   ...
  }
这里的treeNode节点被添加到mainFrm中treeview控件的根节点上。

现在我在类cListenerPort中实现一个方法,将一个treeNode节点作为节点Listen_port_node的子节点,并实现treeView的重绘,应该如何实现?

(我的想法是:
_mainFrm.treeView_port.Nodes.Add(clientData.client_TreeNod);
_mainFrm.treeView_port.EndUpdate();
这里只是作为根节点的尝试,但还是会有异常


请大家帮帮忙解决一下

------解决方案--------------------
Lz的方法貌似想的复杂了。你把窗体的对象传进去,但控件的修饰符是private,所以没法访问。
重绘我这里有个简单例子。你没有讲要怎样,就简单贴一下把。
------解决方案--------------------
我写了下 没有问题啊 可以添加的阿
我client里就含一个treeNode