проверить указанную ячейку datagridview на числовое значение vb.net

У меня есть вопрос о сетке данных. У меня есть представление сетки данных, и я хочу, чтобы некоторые из ячеек были ограничены использованием только чисел, а другие оставлены для приема любого текста, который хочет пользователь. Идея, с которой я столкнулся, состоит в том, чтобы использовать событие изменения значения ячейки datagrid, которое проверяет указанную ячейку, чтобы увидеть, содержит ли она числовое значение, если да, то продолжайте, иначе покажите окно сообщения и переименуйте неверную ячейку, пока она не будет содержать число мой пример, однако просто переходит к другой ячейке, как мне это исправить?

        MessageBox.Show("Changed")

    Dim HVAL As String
    HVAL = DataGridView2.Rows(2).Cells(1).Value
    If IsNumeric(HVAL) Then
        MsgBox("is number, do nothing")
    Else
        MsgBox("is other than number")
        DataGridView2.Rows(2).Cells(1).Selected = True
        DataGridView2.Rows(2).Cells(1).Style.SelectionBackColor = Color.Crimson
    End If
End Sub

person TM80    schedule 25.04.2016    source источник


Ответы (1)


Datagridview имеет встроенный поток событий CellValidation именно для этого, так что не придумывайте свой собственный. Для начала просмотрите: Winforms: https://msdn.microsoft.com/en-us/library/7ehy30d4(v=vs.110).aspx В этом примере показана базовая настройка, вернитесь с конкретными вопросами, если вы застряли.

person tolanj    schedule 25.04.2016
comment
Это похоже на элемент управления для всего столбца, который мне нужен для проверки только определенных ячеек? - person TM80; 25.04.2016