我做了一个Treeview来加载数据库信息,然后点一个节点,在一个Listview里出现这个项的详细记录。我的问题是,如果我给这个项了添加或删除了数据,想通过Treeview重新LOAD一下,来获得当前节点对应项里的更新后的信息,这个怎么实现?(我试过在Listview里通过item.remove的方法,但是,这样给联系删除带来问题,如果Treeview能自动刷新目前选中的这个项,那就用不到Listview的事件了。)可能表述有点乱,希望大家谅解。

解决方案 »

  1.   

    先清空Listview,再重新調用Treeview来加载数据
      

  2.   

    您说的前面几条我都知道,就是您说的最后一条
    Treeview_click中刷新,因为我的数据加载就是在这个事件里的。我想数据添加进去后,在调用这个点击事件,参数怎么来?那个ByVal Node As MSComctlLib.Node 参数怎么写?----------------------
    数据添加没有必要进行刷新呀?如果你同时在listview中进行过操作的话。这个时候listview中已是最新的了。  如果不同时在listview中进行操作的话。也可以刷新.因为你在数据添加的时候肯定是知道要加入到那一个treeview中的节点。 
    (在调用这个点击事件,参数怎么来?那个ByVal Node As MSComctlLib.Node 参数怎么写?)
       你可以做成一个函数嘛。 这时就可以传参数据啦
      

  3.   

    这个好办
        '刷新员工信息数据
        Dim nodeX As Node
        Set nodeX = frmEmplyee.tvwDept.Nodes(g_strNodeKey)
        Call frmEmplyee.tvwDept_NodeClick(nodeX)
    这里的g_strNodeKey为你所选择的节点,记录下来
      

  4.   

    我也觉得这个问题好怪哦,我也是像 daisy8675(莫依) ( )这样来做的,专门有个函数来调用数据库里的数据到Listview的,问题是,如果我用调试按F8一步步来,界面上的Listview里就能出来我添加的项,如果没有中断调试,直接F5来运行,Listview里又出不来,这我就傻了……
      

  5.   

    问题已经解决!
      哈哈,想起来就想骂自己,呵呵,是我对ADO不熟悉,在关闭一个conn连接之前又调用了那个Load2Lv函数,造成相互干扰。问题解决,散分,多谢大家帮助。(不过,我有个感觉,ADO速度还真的慢啊,比DAO差了好几个级别,但是功能强大点,没话说。)