2016-03-02 3 views
3

У меня возникли проблемы с просмотром сохраненных элементов в ListView.Список View vbnet

1 является Item No и c001 является Item Code но:

enter image description here

Что случилось с моим кодом?

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 

ответ

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 

Таким образом, вы поместите их бок о бок. Не один ряд за другим.

+0

Спасибо! Правильно: D – cydi

2

Каждый раз, когда вы звоните Items.Add добавляет совершенно новый элемент (он также возвращает ссылку на элемент, добавленный)

Что вам нужно сделать, это установить SubItem текст каждого элемента, который вы добавляете. Вы можете использовать возвращенное изделие, чтобы сделать это так (требуется Option Infer On):

While dbread.Read 
     Dim lvi = ListView1.Items.Add(dbread("itemNo")) 
     lvi.SubItems.Add(dbread("itemCode")) 
    End While 
Смежные вопросы