我有一个DataGridView,我试图检查行是否已经存在(如果是的话),我想跳过外部“ foreach”语句的循环。
我想像这样,但也许有一些更优化的方法可以做到这一点。
(此功能是删除当前行,并插入新行,以免重复)
(outer foreach)
for (int i = 0; i < dataGridViewFarm.RowCount; i++)
{
if (villageParams[3] == dataGridViewFarm.Rows[i].Cells[3].Value.ToString())
{
dataGridViewFarm.Rows.Remove(dataGridViewFarm.Rows[i]);
}
}
您可以dataGridView
使用Linq对对象从源中删除重复的行,并将新对象设置为新的DataSource。
方法1:示例:假设cell[3]
是mycell3
var noDuplicationList = myList.GroupBy(x => x.mycell3)
.Select(g => g.First())
.ToList();
方法2:DistinctBy()
在MoreLinq项目中使用
安装包morelinq
var noDuplicationList = myList.DistinctBy( x => x.mycell3).ToList();
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句