' dgvrightclick.vb Imports System Imports System.Drawing Imports System.Drawing.Imaging Imports System.Windows.Forms Public Class MyForm Inherits Form WithEvents Dim dgv As DataGridView ' フォームのLoadイベント・ハンドラ Sub MyForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load ' データソースとして画像デコーダ一覧を使用 dgv.DataSource = ImageCodecInfo.GetImageDecoders() End Sub ' DataGridViewのCellMouseClickイベント・ハンドラ Sub dgv_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles dgv.CellMouseClick ' 右ボタンのクリックか? If e.Button = MouseButtons.Right Then ' ヘッダ以外のセルか? If e.ColumnIndex >= 0 And e.RowIndex >= 0 Then ' 右クリックされたセル Dim cell As DataGridViewCell = dgv(e.ColumnIndex, e.RowIndex) ' セルの選択状態を反転 cell.Selected = Not cell.Selected End If End If End Sub ' フォームのコンストラクタ Public Sub New() dgv = New DataGridView() dgv.Dock = DockStyle.Fill Me.Controls.Add(dgv) Me.Size = new Size(480, 240) End Sub End Class ' コンパイル方法:vbc /main:MyForm dgvrightclick.vb