逐行使用dataGridView列进行数学运算,然后在textBox中显示最终值

我一直在考虑做datagridview数学的最佳方法是什么。 我有这个datagridview,我需要一行一行地将列“castka”与počet相乘,然后+下一行然后+下一行直到Im结束然后在textBox中显示最终值。因为我是初学者c#和sql我想先和你讨论这个问题。(欢迎代码:))

非常感谢。

这就是我的桌子的样子。

有人会推荐我吗?

在此处输入图像描述

void calculateProductTwoColumns(int castkaIndex, int pocetIndex) { double[] outVals = new double[tot_rows + 1]; //Array including product of both columns per row int curRow = 0; foreach (DataGridViewRow row in dtg_ksluzby.Rows) { curRow = curRow + 1; outVals[curRow] = (double)row.Cells[4].Value * (double)row.Cells[6].Value; // MessageBox.Show(""+ outVals.ToString()); kpriplac.Text = outVals.ToString(); } } 

这是我在form_load上调用它的方式

  calculateProductTwoColumns( 4, 6); 

DataGridView是一个用于数据显示的控件; 如果要执行任何类型的数学运算,则必须创建一个算法来检索数据并执行计算。 如果从数据库获取数据,则依靠查询执行操作会更快。 遍历单元格并不太困难,也没有写入TextBox ; 这里有一个示例函数执行两个动作(在dataGridView1textBox1之间):

 private void calculateSumColumn(int curColumn) { double valueCurColumn = 0; foreach (DataGridViewRow row in dataGridView1.Rows) { valueCurColumn = valueCurColumn + (double)row.Cells[curColumn].Value; } textBox1.Text = valueCurColumn.ToString(); } 

适用于您的具体案例:

 private void calculateProductTwoColumns(int castkaIndex, int pocetIndex, int tot_rows) { double[] outVals = new double[tot_rows + 1]; //Array including product of both columns per row int curRow = 0; foreach (DataGridViewRow row in dataGridView1.Rows) { curRow = curRow + 1; outVals[curRow] = (double)row.Cells[castkaIndex].Value * (double)row.Cells[pocetIndex].Value; } }