小编Dat*_*ing的帖子

c# 检查 datagridview 列是否包含值 & linq First() vs FirstOrDefault()

我需要检查第一列是否DataGridView包含值 10

我用过这个

int index = -1;  
index = (dgv.Rows.Cast<DataGridViewRow>()  
        .Where(r => r.Cells[0].Value.Equals(10))  
        .Select(r => r.Index)).First();  
Run Code Online (Sandbox Code Playgroud)

但有时会产生错误:序列不包含元素

本论坛上有人建议使用FirstOrDefault()noFirst()

如果第一行中的第一列包含值 10 或者没有第一列包含值 10 的行,变量索引的值为 0,那这行得通

我的解决方案是:

try {
 index = (dgv.Rows.Cast<DataGridViewRow> ()
  .Where(r => r.Cells[0].Value.Equals(10))
  .Select(r => r.Index)).First();
} catch {
 index = -1
}
Run Code Online (Sandbox Code Playgroud)

此致,

c# linq datagridview

2
推荐指数
1
解决办法
1190
查看次数

标签 统计

c# ×1

datagridview ×1

linq ×1