通过数据表触发器传递过来后数据,直接生效呢;

请教一下,我在库存表设置了一个公式,库存数量-销售数量-过期数量=最新数量,但因为公式是在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;

        }

```

如果你想让销售数量的数据变化时,库存表的公式自动计算并更新,而无需手动点击单元格,可以考虑在代码中添加触发销售数量数据变化时的事件处理程序,并在其中更新库存表。

好的,我研究一下,多谢了;