0
该怎么做?如何计算C#中的Datagridview中的重复项#
我已经源泉这段代码How to Count Duplicates in List with LINQ:
var list = new List<string> { "a", "b", "a", "c", "a", "b" };
var q = from x in list
group x by x into g
let count = g.Count()
orderby count descending
select new { Value = g.Key, Count = count };
foreach (var x in q)
{
MessageBox.Show("Value: " + x.Value + " Count: " + x.Count);
}
但如何修改它以计数datagridview的重复?例如datagridview1 [7,i],其中我是datagriview中的行数。
编辑
现在我的代码看起来就像是:
var list = dataGridView1.Rows.OfType<DataGridViewRow>()
.GroupBy(x => x.Cells["TestValues"].Value)
.Select(g => new { Value = g.Key, Count = g.Count(), Rows = g.ToList() })
.OrderByDescending(x => x.Count);
var q = from x in list
group x by x into g
let count = g.Count()
orderby count descending
select new { Value = g.Key, Count = count };
foreach (var x in q)
{
// dataGridView1[7, x].Value.ToString();
MessageBox.Show("Value: " + x.Value + " Count: " + x.Count +"Rows: ");
}
TNX,这是工作:)但有可能在各行要知道重复发生? – Elfoc 2012-03-07 17:20:40
@Elfoc:检查我的编辑是否是你需要的。 (可能有一些语法错误,因为我没有测试它) – digEmAll 2012-03-07 17:55:15
我得到的消息:值:{Value = Test1,Count = 3,Rows = System.Collections.Generic.List'1 [System.Windows.Forms .DataDgridViewRow]}计数:1 //检查我的主题中的编辑 – Elfoc 2012-03-07 18:11:37