not clear what the structure of your current code, but let assume there is a checkbox on each row with "Chk" name, the name is in the "name" column. You can write a loop to loop through the rows, if checked, capture the name, here is an example.
You can also try
dataGridView1.SelectedRows
if checking the checkbox will select the row.
List<string> names = new List<string>();
foreach (DataGridViewRow r in dataGridView1.Rows)
{
bool isSelected = Convert.ToBoolean(r.Cells["Chk"].Value);
if (isSelected)
{
names.Add(r.Cells["name"].Value.ToString());
}
}
MessageBox.Show(string.Join(" - ", names));