c #: добавление значения к метке - PullRequest
0 голосов
/ 18 октября 2010

Как, когда я нажимаю, запускается моя команда datagridview?

          Int64 sum = 0;
        foreach (DataGridViewRow dr in dg_Cheque.Rows)
        {
            if (Convert.ToBoolean(dr.Cells["True_False"].Value) == true) //Cells[0] Because in cell 0th cell we have added checkbox
            {
                sum +=Convert.ToInt64(dr.Cells[0].Value.ToString());
            }
        }

        label1.Text = sum.ToString();

В любом случае я пишу это?

Ответы [ 3 ]

1 голос
/ 18 октября 2010

Зависит от того, где вы нажимаете на DataGridView. Если вы хотите выполнить эту команду, когда вы дважды щелкните ячейку в сетке, вы можете использовать событие CellContentDoubleClick.

Полный список событий для DataGridView можно найти здесь

EDIT:

Похоже, что вы хотите захватить событие щелчка для CheckBox в DataGrid?

Для захвата измененного флажка вы можете подписаться на событие OnCellValueChanged. В EventArgs проверьте, какой столбец был изменен. Если это ваш столбец флажка, то вы можете выполнить команду.

Что-то вроде этого (не проверено):

private void DataGridView1_OnCellValueChanged(object sender, DataGridViewCellEventArgs e)
{

   if (e.ColumnIndex == 0 && e.RowIndex > -1) // Replace 0 with the checkbox col index
   {
         if ((bool)this.DataGridView1[e.ColumnIndex, e.RowIndex].Value == true)
         {
             // Checkbox is checked so call you command
         }
   }

}
0 голосов
/ 18 октября 2010

Все события не отвечают

Этот столбец отмечен флажком

Я должен щелкнуть дважды, чтобы дать ответ, который первый клик

0 голосов
/ 18 октября 2010

Существует MouseClick событие

...