C# Datagridview Checkbox Checked Event – multiple rows

c++checkboxcheckeddatagridview

I have a datagridview with multiple columns and rows.
The first column contains a checkbox.
I want the user to be able to select multiple checkboxes and then perform an action.
For example if they select checkboxes in rows 1 and 2, the data from other columns in rows 1 and 2 can be selected and passed into a messagebox.

I know i need to use the checkbox_changed event to do this. However I am having trouble working out how to do this for multiple rows?

Best Solution

On button Click event do:

static int SelectColumnIndex = 0;
PerformAction_Click(object sender, System.EventArgs e)
{
    string data = string.Empty;
    foreach(DataGridViewRow row in MyDataGridView.Rows)
    {
      if(row.Cells[SelectColumnIndex].Value!=null &&
             Convert.ToBoolean(row.Cells[SelectColumnIndex].Value) == true)
      {
        foreach(DataGridViewCell cell in row.Cells)
        {
          if(cell.OwningColumn.Index!= SelectColumnIndex)
          {
            data+= (cell.Value + " ") ; // do some thing
          }
        }
        data+="\n";
      }
   }
   MessageBox.Show(data, "Data");
}