方法 : Windows フォーム DataGridView コントロールの現在のセルを取得および設定する
DataGridView とのやり取り時に、現在アクティブなセルをプログラムで検出しなければならないことがよくあります。 現在のセルを変更しなければならないこともあります。 このような作業は CurrentCell プロパティを使用して実行できます。
注意
Visible プロパティが false
に設定されている行または列に現在のセルを設定することはできません。
DataGridView コントロールの選択モードによっては、現在のセルを変更すると選択内容が変わる可能性があります。 詳細については、「Windows フォーム DataGridView コントロールの選択モード」を参照してください。
プログラムで現在のセルを取得するには
DataGridView コントロールの CurrentCell プロパティを使用します。
private void getCurrentCellButton_Click(object sender, System.EventArgs e) { string msg = String.Format("Row: {0}, Column: {1}", dataGridView1.CurrentCell.RowIndex, dataGridView1.CurrentCell.ColumnIndex); MessageBox.Show(msg, "Current Cell"); }
Private Sub getCurrentCellButton_Click(ByVal sender As Object, _ ByVal e As System.EventArgs) Handles getCurrentCellButton.Click Dim msg As String = String.Format("Row: {0}, Column: {1}", _ dataGridView1.CurrentCell.RowIndex, _ dataGridView1.CurrentCell.ColumnIndex) MessageBox.Show(msg, "Current Cell") End Sub
プログラムで現在のセルを設定するには
DataGridView コントロールの CurrentCell プロパティを設定します。 次のコード例では、現在のセルが行 0、列 1 に設定されています。
private void setCurrentCellButton_Click(object sender, System.EventArgs e) { // Set the current cell to the cell in column 1, Row 0. this.dataGridView1.CurrentCell = this.dataGridView1[1,0]; }
Private Sub setCurrentCellButton_Click(ByVal sender As Object, _ ByVal e As System.EventArgs) Handles setCurrentCellButton.Click ' Set the current cell to the cell in column 1, Row 0. Me.dataGridView1.CurrentCell = Me.dataGridView1(1, 0) End Sub
コードのコンパイル
この例で必要な要素は次のとおりです。
getCurrentCellButton
とsetCurrentCellButton
という名前の Button コントロール。 Visual C# では、各ボタンの Click イベントを、サンプル コードの関連するイベント ハンドラーにアタッチする必要があります。dataGridView1
という名前の DataGridView コントロール。System アセンブリおよび System.Windows.Forms アセンブリへの参照。
関連項目
.NET Desktop feedback