Есть DataGridView в котором выводится стандартная табличная информация. Нужно получить выбранные строки и/или список каких-то уникальных кодов для набора выбранных строк, что бы потом сотворить с ними что-то нехорошее. В теории существует специальное свойство DataGridView.SelectedRows, но оно работает только в том случае, если строки выбраны целиком. Если у вас выбраны ячейки (например из трех разных строк), это свойство будет пустым. Простой код с использованием свойства SelectedCells поможет решить эту проблему:
List<int> rowIndexList = new List<int>(); List<int> testIdList = new List<int>(); foreach (DataGridViewCell currCell in _testDataGridView.SelectedCells) { if (!rowIndexList.Contains(currCell.RowIndex)) { rowIndexList.Add(currCell.RowIndex); testIdList.Add(Convert.ToInt32( _testDataGridView.Rows[ currCell.RowIndex ].Cells["TEST_ID"].Value)); } }