请教一下,我在库存表设置了一个公式,库存数量-销售数量-过期数量=最新数量,但因为公式是在datagridview的单元格的事件里面写得(如下),所以手工录入修改,公式计算没有问题,但在这个销售数量,我们是在其他表修改后,通过触发器传递过来的,这样非要再到该库存表,点击一下单元格,公式才生效;
请问怎么才能实现,该销售数量的数据,传递到主表,直接就会得出最新结果,而不用再去点击单元格,才生效呢;
```c#
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex<0)
{
return;
}
int a, b, c;
if (dataGridView1.Rows[e.RowIndex].Cells["NO"].Value == DBNull.Value)
{
a = 0;
}
else
{
a = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["NO"].Value);
}
if (dataGridView1.Rows[e.RowIndex].Cells["saleNo"].Value == DBNull.Value)
{
b = 0;
}
else
{
b = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["saleNo"].Value);
}
if (dataGridView1.Rows[e.RowIndex].Cells["expNo"].Value == DBNull.Value)
{
c = 0;
}
else
{
c = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["expNo"].Value);
}
int result = a - b - c;
dataGridView1.Rows[e.RowIndex].Cells["inv"].Value = result;
}
```
如果你想让销售数量的数据变化时,库存表的公式自动计算并更新,而无需手动点击单元格,可以考虑在代码中添加触发销售数量数据变化时的事件处理程序,并在其中更新库存表。
好的,我研究一下,多谢了;