未分類

【C# DataGridView】計算式を設定して自動計算させる

準備

(なし)

デザイン

1. フォーム (Form1) にボタン (button1) を配置します。
2. フォーム (Form1) にデータグリッドビュー (dataGridView1) を配置します。

サンプルコード (C#)

// 名前空間の追加
// (なし)

// コード
private void Form1_Load(object sender, EventArgs e)
{
  dataGridView1.ColumnCount = 3;
  dataGridView1.Columns[0].HeaderText = "A";
  dataGridView1.Columns[1].HeaderText = "B";
  dataGridView1.Columns[2].HeaderText = "(SUM)";
  dataGridView1.RowCount = 5;
}

private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
  if ((dataGridView1[0, e.RowIndex].Value != null) && (dataGridView1[1, e.RowIndex].Value != null))
  {
    int v1 = Int32.Parse((string)dataGridView1[0, e.RowIndex].Value);
    int v2 = Int32.Parse((string)dataGridView1[1, e.RowIndex].Value);
    
    dataGridView1[2, e.RowIndex].Value = (v1 + v2).ToString();
  }
}

解説

データグリッドビューの列 A と列 B の和を 列 (SUM) に自動計算して設定しています。数字が入力されるたびに自動計算を実行するには、CellFormatting イベントを使います。

結果

動作確認環境

Visual Studio 2015 Professional (C# 6.0)

-未分類