Я хочу создать текстовое поле, содержимое которого проверяется каждый раз, когда текст в нем изменяется. И изображение отображается рядом с текстовым полем, если оно правильно, и появляется другое изображение, если оно неверно. Очень похоже на ajax.vb.net считыватель данных с использованием события изменения текста
Heres метод, который я назвал из класса.
Public Sub read1()
cmd.CommandText = "SELECT * FROM testdb WHERE Name='" & name & "'"
Try
rdr = cmd.ExecuteReader
Dim n As String
If rdr.HasRows Then
n = rdr("Name").ToString
Form1.PictureBox1.Image = Image.FromFile("C:\wamp\www\Dropbox\Public\Check-icon.png")
Else
Form1.PictureBox1.Image = Image.FromFile("C:\wamp\www\Dropbox\Public\Delete-icon.png")
End If
Catch ex As Exception
А вот событие, которое требует метода:
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
x.name = TextBox1.Text
x.read1()
End Sub
End Try
End Sub
Проблема, метод, кажется, вызывается только один раз. И первое изображение, которое было отображено, остается таким же даже после ввода данных, которых нет в базе данных. Я подключаю эту программу к базе данных mysql, используя odbc. Можете ли вы помочь мне определить, в чем проблема и как ее исправить?
Heres скриншот:
спасибо, но все равно действуют одинаково. – user225269
Вы прошли через это в отладчике, чтобы посмотреть, что он делает? Я предполагал, что без вызова .Read извлечение значения из объекта rdr вызывает исключение и, таким образом, пропускает нагрузку изображения. –
@Mark .Read не требуется; .HasRows должно быть все это требуется. –