如何获取DataGridView中所有选定单元格的值?

时间:2009-12-30 04:21:20

标签: c# datagridview multi-select

我有一个MultiSelect = true的DataGridView。用户从不同的行中选择不同的单元格后,如何获取所有选定单元格的值?

2 个答案:

答案 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;
}