次の方法で共有


方法: 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
    

現在のセルをプログラムで設定するには

  • CurrentCell コントロールの DataGridView プロパティを設定します。 次のコード例では、現在のセルは行 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
    

コードのコンパイル

この例では、次のものが必要です。

  • ButtongetCurrentCellButton および setCurrentCellButtonという名前のコントロールを操作します。 Visual C# では、各ボタンの Click イベントを、コード例の関連付けられているイベント ハンドラーにアタッチする必要があります。

  • DataGridViewという名前の dataGridView1 コントロール。

  • System アセンブリと System.Windows.Forms アセンブリへの参照。

こちらも参照ください