2013-07-18 3 views
0

прямо сейчас У меня есть программа vb.net, которая читает в файле excel и отображает содержимое в datagridview. Моя цель - иметь код, который сообщает пользователю, есть ли какое-либо значение, кроме 1 или пробела в ячейке. Затем я хочу указать значение по умолчанию в datagridviewcell по умолчанию. Я мог легко выполнить все это, если значение по умолчанию было 1, но когда я изменил его на пустую (String.empty), программа сохранит недопустимый ввод. Вот мой код ниже. Если кто-то может понять, как сделать программу по умолчанию пустым значением в качестве значения по умолчанию, я бы очень признателен! :)Как сделать значение по умолчанию datagridviewcell пустым

Sub validateDGV(rowindex, columnindex) 

    Dim value As String = DataGridView1.Rows(rowindex).Cells(columnindex).Value.ToString 
    If (columnindex = 1) Then 
     Dim cellData = DataGridView1.Rows(rowindex).Cells(columnindex).Value 
     If cellData Is Nothing OrElse IsDBNull(cellData) OrElse cellData.ToString = String.Empty Then 
      'Do nothing because this is allowed 
     ElseIf cellData <> 1 Then 
      MessageBox.Show("Value must be 1 or Blank") 
      DataGridView1.Rows(rowindex).Cells(columnindex).Value = String.Empty 'This should be supplying the default value of blank back to my datagridview but its not :(
      Exit Sub 

     End If 
    End If 
End Sub 
+0

никогда вы пытаетесь прохождения ничего как значение? .Cells (columnindex) .Value = Nothing – Jaxedin

+0

Спасибо за предложение, да, я пробовал «ничего», и он все еще не работает для меня – stackexchange12

+0

Я бы попробовал это: добавьте .ToString в строку, заполняет CellData и настраивает код для строкового значения. И Dim cellData как строка. – rheitzman

ответ

1

Поскольку я использую OleDB я должен установить свою cellData переменную, равную «DBNull.Value» вместо String.Empty

Смежные вопросы