0

VB に問題があります。

CheckedListBox検索中にチェックされたアイテムを保持するコードを作成しようとしています。チェックしたアイテムの名前を格納する配列がありますが、CkeckedListBox.SetCheckedItem()メソッドを使用する場合はインデックスを使用する必要があり、リスト ボックスで検索するたびにインデックスが変更されます。

これは私がこれまでに持っているものです:

Dim checkeditems(1000) As String
If txtSearch.Text.Length = 1 Then
    For i = 0 To 1000
        If lstVerktyg.CheckedItems.Item(i) = "" Then
            Exit For
        End If
        checkeditems(i) = lstVerktyg.CheckedItems.Item(i)
    Next
End If

Dim Connection As New MySqlConnection("server=" & My.Settings.Host & ";user id=" & My.Settings.User & "; password=" & My.Settings.Pass & "; port=3306; database=" & My.Settings.DB & "; pooling=false")
Try
    Connection.Open()
Catch ex As MySqlException
    Exit Sub
End Try
Dim Reader As MySqlDataReader
Dim Query As MySqlCommand
Dim ResultsNumber As Integer = 0
lstVerktyg.Items.Clear()

Query = New MySqlCommand("SELECT `namn` FROM `verktyg` WHERE `namn` LIKE '%" & txtSearch.Text.Replace("'", "\'") & "%' LIMIT 300;", Connection)
Reader = Query.ExecuteReader()

While (Reader.Read())
    lstVerktyg.Items.Add(Reader.GetString("namn"))
End While

If Reader IsNot Nothing Then Reader.Close()
For i = 0 To 1000
    If checkeditems(i) = "" Then
        Exit For
    End If
    If lstVerktyg.GetItemChecked(i) Then

    End If
Next

私は何をしますか?

4

1 に答える 1