如标题,我对数据库进行修改后,ListView控件中的数据得不到刷新,还是未修改已前的!
当然,把该窗口关闭,重新打开之后是修改过的!
我在数据修改后该如何刷新该控件!

解决方案 »

  1.   


    1,重新loadData 也就是你说的重新打开窗体时的2,修改数据库的同时,修改listview      .Remove  .add 
      

  2.   

    如果数据量少的话,可以将你的 加载listview写成一过程
    修改数据库后再调用这个过程如果数据量大的话,一般是通过方法2
      

  3.   

    Public Sub FillEmployee()
        LstEmployee.ListItems.Clear '刷新前把项目清空
        Dim rs As New ADODB.Recordset
        strsql = "select e.id,e.name,e.Hand_Telephone,e.Unit_Telephone,u.Unit_Name,c.Class_Name from (employee e left join unit u on e.unit= u.unit_ID) left join class c on e.Class=c.Class_Id where e.unit=" & Unit_Id
            rs.Open strsql, Adocnn, adOpenStatic, adLockReadOnly
            While Not rs.EOF
                Set itmX = LstEmployee.ListItems.Add(, , rs!ID)
                itmX.Tag = rs!ID
                itmX.SubItems(1) = rs!Name
                itmX.SubItems(2) = rs!Unit_Name
                itmX.SubItems(3) = ""
                itmX.SubItems(4) = rs!Hand_Telephone
                itmX.SubItems(5) = rs!Unit_Telephone
                itmX.SmallIcon = 3
            rs.MoveNext
            Wend
        Set rs = Nothing
    End Sub这个过程是用来刷新LISTVIEW,你可以参照一下,对数据库进行操作后,都直接调用这个过程来刷新
      

  4.   

    Public Sub FillEmployee()
        LstEmployee.ListItems.Clear '刷新前把项目清空
        Dim rs As New ADODB.Recordset
            strsql = "select e.id,e.name,e.Hand_Telephone,e.Unit_Telephone,u.Unit_Name,c.Class_Name from (employee e left join unit u on e.unit= u.unit_ID) left join class c on e.Class=c.Class_Id where e.unit=" & Unit_Id
            rs.Open strsql, Adocnn, adOpenStatic, adLockReadOnly
            While Not rs.EOF
                Set itmX = LstEmployee.ListItems.Add(, , rs!ID)
                itmX.Tag = rs!ID
                itmX.SubItems(1) = rs!Name
                itmX.SubItems(2) = rs!Unit_Name
                itmX.SubItems(3) = ""
                itmX.SubItems(4) = rs!Hand_Telephone
                itmX.SubItems(5) = rs!Unit_Telephone
                itmX.SmallIcon = 3
            rs.MoveNext
            Wend
    END SUB对数据库进行操作后,都调用这个过程来刷新,你可以参考下