Событие щелчка ячейки DataGridView в VS 2010 - PullRequest
3 голосов
/ 07 января 2011

Я немного новичок в элементах управления DataGrid, но мне просто любопытно, почему первый блок кода ниже работает, а второй блок кода нет? (Единственное, что я вижу, это Обрабатывает DataGridClaims Синтаксис

Блок 1

Private Sub DataGridClaims_CellContentClick_1(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridClaims.CellContentClick
    If e.RowIndex <> -1 Then
        Dim frmViewClaims As New objViewClaim
        frmViewClaims.ClaimID = DataGridViewClaims.CurrentRow.Cells("ClaimNum").Value
        frmViewClaims.Show()
    End If
End Sub

Блок 2

Private Sub DataGridClaims_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs)
    If e.RowIndex <> -1 Then
        Dim frmViewClaims As New objViewClaim
        frmViewClaims.ClaimID = DataGridViewClaims.CurrentRow.Cells("ClaimNum").Value
        frmViewClaims.Show()
    End If
End Sub

Ответы [ 2 ]

2 голосов
/ 07 января 2011

Ключевое слово "дескрипторы" в VB.net помечает функцию как прослушиватель данного события. Без «Handles DataGridClaims» сетка не может знать, как запустить вашу функцию при запуске события.

[см. Документ MSDN Doc's] [1] http://msdn.microsoft.com/en-us/library/6k46st1y(v=VS.100).aspx

2 голосов
/ 07 января 2011

Я не слишком знаком с VB.NET, но CellContentClick - это событие, которое происходит при нажатии на содержимое в ячейке.

Чтобы программа поняла, что это событие, вы используете ключевое слово Handles в VB.NET.Это позволяет подключать привязки к обработчикам событий самих методов обработчика событий.

Это эквивалент += в c # и будет выглядеть примерно так:

DataGridClaims.CellContentClick += DataGridClaims_CellContentClick;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...