2013-02-25 40 views
3

如何选择所有行中选择的东西?说我们在所有的difrent /相同列中选择10个项目,在多行这样的:如果只有部分行被选中,如何获取所有选定的行?

enter image description here

我们想要得到结果类似于

var selected = ElementsTableView.SelectedRows.Cast<DataGridViewRow>(); 

但所有行中被选中至少一个列项目。如何用C#中的WinForms做这样的事情?

+0

所以你想创建一个行数组,由每一行至少有一个选中的行组成? – christopher 2013-02-25 22:54:51

+0

@ChrisCooney:是的,我愿意!) – myWallJSON 2013-02-25 22:59:44

回答

11

试试这个:

var selected = ElementsTableView 
       .SelectedCells 
       .Cast<DataGridViewCell>() 
       .Select(c => c.OwningRow) 
       .Distinct(); 
+0

+1。哇,我没想到这是可能的,就像这样简单。 – Neolisk 2013-02-26 02:17:02

1

DataGridViewSelectedCells属性。 DataGridViewCell有一个OwningRow财产,它返回DataGridViewRow

请参阅MSDN文档herehere

相关问题