我在表单上有两个 datagridview 控件。当我们在 DGV1 中选择更改时,DGV2 行会根据 DGV1 中的 ID 进行过滤。现在,如果我在 DGV2 的单元格中进行更改,则名为 Amount 的列会在 DGV1 中更新。我已经使用更改的单元格值实现了这一点并且它工作正常。为此我正在使用数据表。所以当我想在数据库中保存 dgv2 中的更改时。在 DGV2 中输入的值没有保存。为此我也在改变数据表中的值取决于行索引。下面是 DGV1 中的数据
ID 数量 单价 金额 ---------------------- 1 20 2 40 2 40 3 120 在下面的 DGV2 中是数据 ID 销售数量 ------------ 1 5 2 10 1 15 2 10
因此,当用户单击 DGV1 中的任何单元格时,DGV2 行会被过滤(正如您在 DGV1 中看到的 ID=1 有 2 个值)。这一切都很好。下面是我在 Cellvalue changed of DGV2 中编写的代码行,以便数据表单元格也被更新,因为我需要使用 foreach 循环保存在数据库中。
dtBatch.Rows[i].SetField("SellQty", gvBatchDetails.Rows[i].Cells["SellQty"].Value);
我正在使用变量 i (int)。但是当用户在 DGV1 中输入 ID 2 时过滤该行时,第一行的 i 值也更改为 0。在 Datatable ID 2 中位于索引 1 处。那么如何制作在这种情况下,数据表的变化。