まず、私は VB 2012 で作業しています。
データベースの検索に問題があります。それはとても遅くなり、実際にListView
私を悩ませているのはいっぱいです。
TextChange イベントのあるテキスト ボックスがあります。そのインスタント検索。そのため、そのテキスト ボックスに書き込みを開始すると、データベースのフィルター処理が開始され、ListView
.
これはコードtext box
とLoad
手順です
Private Sub txtID_TextChanged(sender As Object, e As EventArgs) Handles txtID.TextChanged
Load("SELECT * FROM table WHERE id LIKE '" & txtID.Text & "%'")
End Sub
Private Sub Load(ByVal strQ As String)
List.Items.Clear()
cmd = New SqlClient.SqlCommand(strQ, con)
dr = cmd.ExecuteReader()
If dr.HasRows = True Then
While dr.Read
Dim X As ListViewItem
X = List.Items.Add(dr(0))
X.SubItems.Add(dr(2))
X.SubItems.Add(dr(3))
X.SubItems.Add(dr(4))
X.SubItems.Add(dr(1))
X.SubItems.Add(dr(5))
End While
End If
End Sub
そのため、文字をヒットするたびにロード プロシージャが呼び出されます。
そして、私は非常に多くのデータを持っているので、とても遅くなります。どういうわけか私を助けることができますか?解決策はありますか?