这是我得到的数据网格
+==========+==========+==========+==========+
| Product | Price | quantity | Total |
+==========+==========+==========+==========+
所以我从MySQL数据库获得了产品和价格(表1)。并且用户在数量单元格中输入数字,程序计算总计(总计=价格*数量)将其保存在表2中(在MySQL中)。
这是一个例子
+==========+==========+==========+==========+
| Product | Price | quantity | Total |
+==========+==========+==========+==========+
| AAAAA | 30 | 2 | 60 |
+==========+==========+==========+==========+
更新
我像这样添加CellEditEndding处理程序
private void Produit_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
{
DataTable dt = new DataTable();
dt = ((DataView)Produit.ItemsSource).ToTable();
foreach (DataRow row in dt.Rows)
{
row["total"] = (Convert.ToDouble(row["price"]) * Convert.ToDouble(row["quantity"]));
}
Produit.ItemsSource = dt.DefaultView;
}
当我编辑数量单元格时,每个东西都返回0。
注意:当我填写DataGrid时,我用zoros填充总数
答案 0 :(得分:0)
据我了解您的问题,您想要询问用户只需输入产品代码和数量,然后价格和总价格会自动添加到data grid view
。为此,您需要在Label field
TemplateField
的{{1}}的帮助下添加data grid column
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblprice" runat="server"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblTotalPrice" runat="server"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
然后访问标签到服务器端
Label lblprice= (Label)row.FindControl("lblprice");
Label lblTotalPrice= (Label)row.FindControl("lblTotalPrice");
现在只需将值分配给这些标签。