我的vb.net文本框的Textchanged事件在退格后无法正常工作。 所以我有一个文本框,用户可以在其上输入值。 然后这个文本框将使用textchanged事件搜索sql。 例如,如果我输入 HUM ,它将返回列表视图的值,如下所示:
HUMAN
HUMANITY
I AM HUMAN
Etc
问题是,如果我键入错误,如 HUM,(使用逗号)并且我退格逗号,则查询不再有效。列表视图显示空列表。 那么我需要做些什么来解决这个退避问题?
以下是代码:
Private Sub txtString1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtString1.TextChanged
query2 = "SELECT fnID, string1, output, FROM quotes where string1 like '%" & txtString1.Text & "%' order by fnID asc"
Call FillList2()
End Sub
Private Sub FillList2()
With lvDaftarOutput
.Clear()
.View = View.Details
.GridLines = True
.FullRowSelect = True
.Columns.Add("ID", 0)
.Columns.Add("String1", 0)
.Columns.Add("Output", 150)
End With
Call FillListView(lvDaftarOutput, GetData(query2))
End Sub
一切正常,除非我对文本框上的值进行退格。
答案 0 :(得分:0)
这取决于您构建查询的方法。
尝试像这样构建它:
Dim cmd As New SqlCommand("UPDATE [TableA] SET ColumnA=@ColumnA WHERE ID=@ID", Conn)
cmd.CommandText = "select * from customer where id=?id";
cmd.Parameters.AddWithValue("?id",CustomerIDValue);