回 帖 发 新 帖 刷新版面

主题:实在想不出,如何实时刷新listview中的数据,请帮帮

当添加或删除数据后,在按确定时,listview中的数据如何能够瞬间刷新,显示修改后的数据?

想不出,请大师帮帮忙。谢谢![em10][em10]

回复列表 (共7个回复)

沙发

你应该刷新listview的数据源。。然后再刷新listview
我也不知道。。是不是这样子。

板凳

还是不明白

3 楼

我认为可能是你代码顺序有问题,或者是事件选的不是很正确。你能具体说一下吗

4 楼

Private Sub FrmMain_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
       Dim myReaderPHO As SqlDataReader
        myReaderPHO = biaoPHO.ExecuteReader(CommandBehavior.CloseConnection)
        Do While myReaderPHO.Read '读取表photolist的内容
            Dim myItem2 As New ListViewItem
            myItem2.Text = myReaderPHO.Item("……") '传递表photolist的内容
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            ListView1.Items.Add(myItem2)     '
        Loop
End Sub

实现:SQL的数据到listview的显示

问题是:如果在子窗体可以对SQL数据库进行修改,如何让listview实现修改后的效果。
        按照我现在的情况,只能重新运行才能看到修改后的效果。(因为重新运行后,
        才能产生“FrmMain_Load”这个主窗体事件)

情况就这样,帮帮吧

5 楼

是第二次进行修改时就可以了,是吗?
那这样,你在Module中写这样的代码
Public myform1 As New Form1
    Public myform2 As New form2
Public Sub main()
        Application.Run(myform1)
    End Sub
把运行初始窗体设为Sub main
这里的Form1就是你的FrmMain
你再试一下看可以吗

6 楼

没有啦,

是想每次修改后,都能够实现瞬时刷新lisrview中的数据

依你的方法改后为:
未处理的“System.InvalidOperationException”类型的异常出现在 system.windows.forms.dll 中。
其他信息: 在单个线程上开始第二个消息循环是无效的操作。请改用 Application.RunDialog 或 Form.ShowDialog。

7 楼

[quote]Private Sub FrmMain_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
       Dim myReaderPHO As SqlDataReader
        myReaderPHO = biaoPHO.ExecuteReader(CommandBehavior.CloseConnection)
        Do While myReaderPHO.Read '读取表photolist的内容
            Dim myItem2 As New ListViewItem
            myItem2.Text = myReaderPHO.Item("……") '传递表photolist的内容
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            myItem2.SubItems.Add(myReaderPHO.Item("……").ToString())
            ListView1.Items.Add(myItem2)     '
        Loop
End Sub

实现:SQL的数据到listview的显示

问题是:如果在子窗体可以对SQL数据库进行修改,如何让listview实现修改后的效果。
        按照我现在的情况,只能重新运行才能看到修改后的效果。(因为重新运行后,
        才能产生“FrmMain_Load”这个主窗体事件)

情况就这样,帮帮吧

[/quote]

我来回复

您尚未登录,请登录后再回复。点此登录或注册