Dev统计选中行、如需其他数据源可留言

 Clipboard.Clear();
            Dictionary<string, decimal> dtary = new Dictionary<string, decimal>();
            string Ls = "";
            foreach (int i in gridView1.GetSelectedRows())
            {
                var da = gridView1.GetRow(i);
                //GridView gv = gridView1;
                //if (dr != null)
                foreach (GridColumn j in gridView1.GetSelectedCells(i))
                {
                    decimal num = 0.00m;
                    string columnNum = "";
                    foreach (PropertyInfo pi in da.GetType().GetProperties())
                    {
                        if (pi == null) continue;
                        if (pi.CanWrite == false) continue;
                        if (pi.GetValue(da, null) != null)
                            if (pi.Name == j.FieldName) { try { columnNum = pi.GetValue(da, null).ToString(); } catch { } }
                    }
                    Ls += columnNum + "\t";
                    if (decimal.TryParse(columnNum, out num))
                    {
                        if (dtary.ContainsKey(j.Name))
                            dtary[j.Name] += num;
                        else
                            dtary[j.Name] = num;
                    }
                    //var a = j.Column.Name;
                }
                Ls += "\r";
            }
            Clipboard.SetDataObject(Ls);
            string returnmsg = "所有选中列可以统计的统计情况为:";
            foreach (KeyValuePair<string, decimal> vkp in dtary)
            {
                returnmsg += "\n" + vkp.Key + "列値为:" + vkp.Value.ToString();
            }
            MessageBox.Show(returnmsg);

以上包含复制选中的不包含列头的输出。与统计可统计的所有选中行。需要固定统计数据源为数字类型的。另外联系我就行了

转载于:https://www.cnblogs.com/gclearn/p/4513590.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值