DataGridView in Visual Basic 2010
Привет всем. Подскажите пожайлуста как мне сделать так чтоб при поиске из DataGridView не выводилась ошибка. Дело в том что у меня прога на Visual Basic 2010, а БД на SQL Sever 2008, так вот я на форму поставил несколько кнопок и textbox. И с помощью этих кнопок и textbox я ищу данные из DataGridView. Когда я заполняю все поля в DataGridView у меня все получаеться, а вот как только оставляю одно поле пустым сразу же выдаеться ошибка что "поле isDBNull". Много чего пробовал, но не полу чаеться. Хотел изменить значения <Allow Nulls>, edit columns и много чего, но не получилось. Помогите мне с этим справиться. Спасибо заранее
Цитата:
выдаеться ошибка что "поле isDBNull"
только это поле выдает ошибку или все другие пустые поля?
Дайте фрагмент кода
Вот пример
Правда этот пример не дает пользователю оставить поле "CompanyName" пустым.
Код:
Private Sub dataGridView1_CellValidating(ByVal sender As Object, _
ByVal e As DataGridViewCellValidatingEventArgs) _
Handles dataGridView1.CellValidating
' Подтвердить ввод Название компании, отключив пустые строки.
If dataGridView1.Columns(e.ColumnIndex).Name = "CompanyName" Then
If e.FormattedValue IsNot Nothing AndAlso _
String.IsNullOrEmpty(e.FormattedValue.ToString()) Then
dataGridView1.Rows(e.RowIndex).ErrorText = _
"Название компании не должно быть пустым"
e.Cancel = True
End If
End If
End Sub
Private Sub dataGridView1_CellEndEdit(ByVal sender As Object, _
ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) _
Handles dataGridView1.CellEndEdit
' Очистить строку ошибки в случае, если пользователь нажмет ESC.
dataGridView1.Rows(e.RowIndex).ErrorText = String.Empty
End Sub
ByVal e As DataGridViewCellValidatingEventArgs) _
Handles dataGridView1.CellValidating
' Подтвердить ввод Название компании, отключив пустые строки.
If dataGridView1.Columns(e.ColumnIndex).Name = "CompanyName" Then
If e.FormattedValue IsNot Nothing AndAlso _
String.IsNullOrEmpty(e.FormattedValue.ToString()) Then
dataGridView1.Rows(e.RowIndex).ErrorText = _
"Название компании не должно быть пустым"
e.Cancel = True
End If
End If
End Sub
Private Sub dataGridView1_CellEndEdit(ByVal sender As Object, _
ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) _
Handles dataGridView1.CellEndEdit
' Очистить строку ошибки в случае, если пользователь нажмет ESC.
dataGridView1.Rows(e.RowIndex).ErrorText = String.Empty
End Sub