我无法在ListView中查看已保存的项目。
1
是Item No
而c001
是Item Code
,但是:
我的代码出了什么问题?
ListView1.Items.Clear()
sql = "SELECT * FROM inventory"
Try
dbcomm = New MySqlCommand(sql, dbconn)
dbread = dbcomm.ExecuteReader()
While dbread.Read
ListView1.Items.Add(dbread("itemNo"))
ListView1.Items.Add(dbread("itemCode"))
End While
dbread.Close()
Catch ex As Exception
MsgBox("Error in collecting data from Database. Error is :" & ex.Message)
dbread.Close()
Exit Sub
End Try
答案 0 :(得分:4)
您应该在SubItems
而不是Items
中添加第二项。改变这个:
While dbread.Read
ListView1.Items.Add(dbread("itemNo")) 'placed in row #1
ListView1.Items.Add(dbread("itemCode")) 'placed in row #2
End While
分为:
While dbread.Read
ListView1.Items.Add(dbread("itemNo")).SubItems.Add(dbread("itemCode")) 'both placed in row #1
End While
这样,你可以将它们并排放置。不是一排又一排。
答案 1 :(得分:2)
每次拨打Items.Add
时,都会添加一个全新的项目(它还会返回您添加的项目的引用)
您需要做的是设置您添加的每个项目的SubItem
文本。您可以使用返回的项目引用来执行此操作(需要Option Infer On
):
While dbread.Read
Dim lvi = ListView1.Items.Add(dbread("itemNo"))
lvi.SubItems.Add(dbread("itemCode"))
End While