【发布时间】:2015-08-29 14:43:53
【问题描述】:
我遇到了问题。当主窗体加载时,它调用 loadSentnbox()
Public Sub loadSentbox()
logmysql()
Try
Dim sqlquery As String
logmysql()
sqlquery = "SELECT * FROM files_tr WHERE `from` = '" + user + "'"
mysqlCommand = New MySqlCommand(sqlquery, mysqlCon)
'Open the Db
mysqlCon.Open()
mysqlReader = mysqlCommand.ExecuteReader
While mysqlReader.Read
Dim i As ListViewItem
ltv_sentbox.BeginUpdate()
i = ltv_sentbox.Items.Add(mysqlReader.Item("to"))
i.SubItems.Add(mysqlReader.Item("filename"))
i.SubItems.Add(mysqlReader.Item("size"))
i.SubItems.Add(mysqlReader.Item("status"))
ltv_inbox.Update()
ltv_inbox.EndUpdate()
End While
mysqlCon.Close()
'ltv_sentbox.Refresh()
Catch ex As Exception
MsgBox(ex.ToString, MsgBoxStyle.Critical)
End Try
End Sub
效果很好!但我想从另一个表单更新数据库,然后关闭窗口并更新原始页面上的列表视图。我在关闭事件中写了 loadSentbox(),但 listview 什么也没显示。 解决办法是什么 ? (我是 vb.net 的新手。不要写复杂的代码)
【问题讨论】:
-
确保在重新加载之前清除 ListView 项(否则从数据库重新读取时会出现重复项),并确保您没有调用 loadSentBox() 到实例的第二种形式。您可能需要发布更多代码才能在这里获得一些好的答案。您已说明您发布的方法有效,因此问题将出在其他地方。
标签: mysql vb.net listview listbox refresh