Я пытаюсь отобразить содержимое таблицы из базы данных Access 2007 в окне списка.
Я использую поле со списком, чтобы выбрать пользователя, о котором я хочу узнать подробности:
Private Sub Admin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ReadUsers()
con.ConnectionString = ("Provider=Microsoft.ACE.OLEDB.12.0;" & "Data Source=E:\Computing\Projects\Login\Login\bds.accdb;")
con.Open()
Sql = "Select * From Clients"
da = New OleDb.OleDbDataAdapter(Sql, con)
da.Fill(ds, "Clients")
MaxRows = ds.Tables("Clients").Rows.Count
intCounter = -1
ComboBoxClients.DisplayMember = "ClientName"
ComboBoxClients.ValueMember = "ID"
ComboBoxClients.DataSource = ds.Tables("Clients")
Тогда внутри списка:
Private Sub ListView1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView1.SelectedIndexChanged
Dim Test As Integer
ListView1.Clear()
For i = 0 To MaxRows - 1
Test = ds.Tables("Clients").Rows(i).Item("ClientName")
If Test = ComboBoxClients.SelectedValue Then
For intCounter As Integer = 0 To ds.Tables("Clients").Columns.Count - 1
ListView1.Columns.Add(ds.Tables("Clients").Columns(intCounter).ColumnName, 80, HorizontalAlignment.Center)
Next
Dim ListItem = New ListViewItem
ListItem = ListView1.Items.Add(ds.Tables("Clients").Rows(i).Item(0))
ListItem.SubItems.Add(ds.Tables("Clients").Rows(i).Item(1))
ListItem.SubItems.Add(ds.Tables("Clients").Rows(i).Item(2))
ListItem.SubItems.Add(ds.Tables("Clients").Rows(i).Item(3))
ListItem.SubItems.Add(ds.Tables("Clients").Rows(i).Item(4))
End If
Next
End Sub
В окне списка пока ничего не отображается:
Любая помощь будет великолепна, спасибо.
ListView1 Редакция:
Private Sub ListView1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView1.SelectedIndexChanged
Dim Test As Integer
Dim ListItem = New ListViewItem
ListView1.Clear()
For i = 0 To MaxRows - 1
Test = ds.Tables("Clients").Rows(i).Item("ClientName")
If Test = ComboBoxClients.SelectedValue Then
For intCounter As Integer = 0 To ds.Tables("Clients").Columns.Count - 1
ListView1.Columns.Add(ds.Tables("Clients").Columns(intCounter).ColumnName, 80, HorizontalAlignment.Center)
Next
ListItem.SubItems.Add(ds.Tables("Clients").Rows(i).Item(0))
ListItem.SubItems.Add(ds.Tables("Clients").Rows(i).Item(1))
ListItem.SubItems.Add(ds.Tables("Clients").Rows(i).Item(2))
ListItem.SubItems.Add(ds.Tables("Clients").Rows(i).Item(3))
ListItem.SubItems.Add(ds.Tables("Clients").Rows(i).Item(4))
ListView1.Items.Add(ListItem)
End If
Next
End Sub