是否有任何方法可以使用LINQ样式查询来查找DataGridView行?我正在尝试查找绑定到特定对象的行并突出显示它。
MyDatagrid.Rows.FirstOrDefault(r => r.DataBoundItem == myItem).Selected = true;
错误1“System.Windows.Forms.DataGridViewRowCollection”不包含“FirstOrDefault”的定义,并且找不到接受类型为“System.Windows.Forms.DataGridViewRowCollection”的第一个参数的扩展方法“FirstOrDefault”(是否缺少using指令或程序集引用?)
2条答案
按热度按时间5jvtdoz21#
你需要强制转换为
IEnumerable<DataGridViewRow>
,因为DataGridViewRowCollection
只实现了IEnumerable
:fxnxkyjh2#
对于那些来这里寻找VB版本的人来说,Lee的回答是:
此外,如果你像我一样,使用它从绑定的
DataTable.DataRow
(DataGridView.DataSource = DataTable
)中找到DataGridViewRow
,那么你可以这样访问它:这比在
DataGridView
中循环查找匹配值要高效得多。