【发布时间】:2013-03-28 05:36:24
【问题描述】:
我有以下 DataGrid(用罗马尼亚语编写):
我想通过这个公式计算“Valoarea”列:
valoarea = Cantitatea * Pret unitar (fara T.V.A.)
我的实际代码给了我错误:
private void produseFacturate_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
switch (e.ColumnIndex)
{
case 3:
var row = produseFacturate.Rows[e.RowIndex];
double qty, price;
double.TryParse(row.Cells[2].Value.ToString(), out qty);
double.TryParse(row.Cells[3].Value.ToString(), out price);
row.Cells[4].Value = (qty * price).ToString();
break;
}
}
现在,我的问题是:如何使用良好的数据填充行上的特定单元格?
【问题讨论】:
-
您是否有现有代码,当您在该特定记录上时,它将获取 rows.column 数据,您可以在变量中捕获它以进行计算。问题是你想计算
Cell Enter或Cell Exit,基于Valoarea T.V.A.值是空还是空.. -
我不相信数据网格中内置了任何类型的计算引擎(它不是电子表格)。在我的课堂上,我只会将 Valoarea 设为只读属性,然后计算 getter 中的值。
-
@DJKRAZE,你理解我的问题。是我不知道如何获取那个特定的单元格
-
您目前有任何现有代码吗?如果是这样,请从那里发布您从 DataGridView 中选择的代码,我很确定我们可以为您提供帮助
-
见我的编辑。它为参数
index提供 ArgumentOutOfRangeException