2017-01-13 7 views
0

私はグリッドを持ち、最初の列はExcluir( "Delete")とともに各行のボタンです。私はボタンアクションを回復する必要があるボタンをクリックし、それがクリックされた行するとボタンDataGridの列

enter image description here

、私はこれをしようとしているが、動作しません。

Private Sub dgAdm_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) 

    IF e.ColumnIndex = dgAdm.Columns["Delete"].Index AndAlso e.RowIndex >= 0 

      Console.WriteLine("Button on row {0} clicked", e.RowIndex) 
    End 

誰かが私はそれはあなたが最初のDataGridViewにキャストする必要がありObjectタイプですので、あなたは、送信者パラメータを参照する必要が

+0

'が、恐ろしい問題の説明work'でありません。 '&&' ???あなたは 'AndAlso'を意味しましたか? – Plutonix

+0

DataGridViewCellEventArgsが定義されていません。そして、 "削除"は識別子が期待されていると言います –

+1

有効なvbではない完全なコードを投稿してください。ネット構文。 – Jaxedin

答えて

1

を欠けているものを知っています。ここでCellClickイベントを介して行と列の数を抽出する方法vb.netの例である:

Private Sub DataGridView1_CellClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellClick 
    Dim rowNum As Integer = CType(sender, DataGridView).CurrentCell.RowIndex ' get row number 
    Dim colNum As Integer = CType(sender, DataGridView).CurrentCell.ColumnIndex ' get col number 

    If colNum = 1 Then ' the index of the "delete" button column 
     MsgBox("the row number that was clicked: " & rowNum) 
    End If 

End Sub 
+1

実際のタイプの変数について 'DirectCast(sender、DataGridView)'を使用している場合は、安価で高速です。 – Fabio

+0

ありがとう!私はそれを採用する。 C#の '(DatagridView)Sender'に相当しますか? – jonathana

関連する問題