C# 用Linq或Lambda查询DataGridView行中的数据是否包含(各种操作)

http://blog.csdn.net/xht555/article/details/38685845

https://www.cnblogs.com/wuchao/archive/2012/12/25/2832744.html

 

 IEnumerable<DataGridViewRow> enumerableList = this.dataGridView1.Rows.Cast<DataGridViewRow>();
                        List<DataGridViewRow> list = (from item in enumerableList
                                                      where item.Cells["projectCode"].Value.ToString() == txt_cmd.Text.Trim()
                                                      select item).ToList();

 

 

//数组转成字符串

IEnumerable<DataGridViewRow> DataGridList = this.rcomdgv2.Rows.Cast<DataGridViewRow>();
 String shopArrayLinq = String.Join(",", (from item in DataGridList where item.Cells["CheckShop"].Value.ObjToInt() == 1 select item.Cells["ShopID"].Value).Distinct());

 

//对应的数据赋值

IEnumerable<DataGridViewRow> DataGridList = this.rcomdgv2.Rows.Cast<DataGridViewRow>();
                        (from item in DataGridList where shopNameArry.Contains<string>(item.Cells["ShopID"].Value.ObjToString()) select item)
                        .ToList()
                        .ForEach(item => item.Cells["CheckShop"].Value = 1);

//求表格和

var TotalActualWeight = from p in enumerableList group p by p.Cells["out_barcode"].Value into g select new { TotalActual = g.Sum(p => p.Cells["weight"].Value.ObjToDecimal()) };
 ActualWeight.Value = TotalActualWeight.First().TotalActual;

 

//去除重复
IEnumerable<DataGridViewRow> enumerableList = this.dataGridView1.Rows.Cast<DataGridViewRow>();
            ///只会获得 Number 列的名称
            var luo = enumerableList.GroupBy(x => x.Cells["Number"].Value).ToList();

 

posted @ 2018-03-08 21:07  LuoCore  阅读(2233)  评论(1)    收藏  举报