关于datagridview中列求和的问题

wabjx_ok1 2012-05-07 09:44:20
我在datagridview中用鼠标任意选择一列数据,然后想实现这列数据的求和,代码如下
int cIndex = dgv1.CurrentCell.ColumnIndex, dataRowsCount=dgv1.SelectedRows.Count;
double sum = 0;
for (int i = 0; i < dataRowsCount; i++)
{
sum += Convert.ToDouble(dgv1.Rows[i].Cells[cIndex].Value);
}
this.dgv1.Rows[dataRowsCount].Cells[cIndex].Value = sum;
但是调试的时候cIndex(选中列的索引),dataRowsCount(选中列共有多少行)这两个变量值都是0,意思我什么都没选中,不知道问题出在哪里,是不是在选中datagridview中的数据时事先要对datagridview的什么属性进行设置啊,初学C#,望有经验的人指导一下
...全文
466 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
laoniu19851106 2012-05-18
  • 打赏
  • 举报
回复
没人结贴啊?
tmd456 2012-05-08
  • 打赏
  • 举报
回复
dgv1.Rows[i].Cells[cIndex].Value==DBNull.Value?0:Convert.ToDouble(dgv1.Rows[i].Cells[cIndex].Value)
wabjx_ok1 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
dataRowsCount=dgv1.SelectedRows.Count;
改为dataRowsCount=dgv1.Rows.Count;
[/Quote]
谢谢,但是我原来就那么做的,选中一列数据(行数并没占据所有行),在执行求和按钮的时候总是报错“对象不能从DBNull转换为其他类型”
旅行者I号 2012-05-07
  • 打赏
  • 举报
回复
dataRowsCount=dgv1.SelectedRows.Count;
改为dataRowsCount=dgv1.Rows.Count;
laoniu19851106 2012-05-07
  • 打赏
  • 举报
回复
楼主可以看看这个链接http://hi.baidu.com/shinexsun/blog/item/b75109835207bc97f603a633.html

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧