Pra*_*hap 5 c# datagridview winforms
我有两种形式,Form1(DGV1 & DGV2)并且两种形式Form2(DGV3 & DGV4)都有Datagridview控件.
在Form1那里有一个Form2用户可以添加行的按钮链接Form1 datagridview(DGV1).在Form2 ? (DGV3 and DGV4),checkbox第一列中有一个,用户一次只能选择一行.
有两个按钮Form2:Done和Add Items
当用户通过一个接一个地选择行来单击"添加项目"时,必须将行添加到" datagridview打开" Form1,单击"完成"按钮时,Form1应显示添加的所有行.
我做到了这一点.
列中的DGV1和DGV2是
DGV1色谱柱
Sno Desciption SellQty ItemID
----------------------------
1 ABC 0 1
2 XYZ 0 2
Run Code Online (Sandbox Code Playgroud)
DGV2色谱柱
Sno BatchNo SellQty ItemID
----------------------------
1 123 10 1
2 528 20 2
1 568 30 1
2 522 40 2
Run Code Online (Sandbox Code Playgroud)
在的加载Form1,我怎么能得到的总和SellQty根据ItemID的Form ? DGv2和更新的价值SellQty在 DGV1.
例: For ItemID=1 sum(SellQty)=40
所以我需要将此值赋给DGV1 SellQty Column=40.
请指教.
以下将为您提供总数量ItemID == 1- (确保为数据网格使用正确的列名称)
int total = DGV1.Rows.Cast<DataGridViewRow>()
.Where(r=> Convert.ToInt32(r.Cells["ItemID"].Value) == 1)
.Sum(t=> Convert.ToInt32(t.Cells["SellQty"].Value));
Run Code Online (Sandbox Code Playgroud)
编辑:
对于更新gridview,您可以执行以下操作:
for (int i = 0; i < DGV1.Rows.Count; i++)
{
if (Convert.ToInt32(DGV1.Rows[i].Cells["ItemID"].Value) == 1)
DGV1.Rows[i].Cells["SellQty"] = total;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9062 次 |
| 最近记录: |