我有一个MultiSelect = true的DataGridView。用户从不同的行中选择不同的单元格后,如何获取所有选定单元格的值?
答案 0 :(得分:15)
您可以迭代SelectedCells。
foreach (DataGridViewCell cell in dataGridView1.SelectedCells)
{
MessageBox.Show(cell.Value.ToString());
}
您只询问了该值,但您可能还想知道单元格的行和列,否则该值可能毫无意义。您也可以在单元格对象上访问它们。
答案 1 :(得分:4)
foreach -
DataGrid.SelectedCells
有关SelectedCells属性的更多信息,请访问http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.selectedcells.aspx
在DataGridView中进行大量选择时,SelectedCells集合效率低下。您可以使用一种方法来获取所选单元格的计数。基于此迭代,它会更快。
for (int i = 0; i < grid.GetCellCount(System.Windows.Forms.DataGridViewElementStates.Selected); i++)
{
string val = grid.SelectedCells[i].Value;
}