DataGrid中文本框联动问题
这是一个比较常见的场景:
DataGrid存放物品的列表,
一个列中是一个文本框,存放物品的价格
一个列中也是一个文本框,存放物品的数量
最后一列中的文本框中存放总价,
要求价格不变,修改物品的数量,相应物品的总价随着改变。
解决:
1 三个模版列:PriceTextBox, QuantityTextBox, MoneyTextBox
2 DataGrid的ItemDataBound事件
TextBox PriceTextBox = e.Item.FindControl("PriceTextBox");
TextBox QuantityTextBox = e.Item.FindControl("QuantityTextBox");
TextBox MoneyTextBox = e.Item.FindControl("MoneyTextBox");
string priceUnique = PriceTextBox.UniqueID.Replace(":", "_");
string quantityUnique = QuantityTextBox.UniqueID.Replace(":", "_");
string moneyUnique = MoneyTextBox.UniqueID.Replace(":", "_");
QuantityTextBox.Attributes.Add("onkeyup", moneyUnique + ".value=" + priceUnique + ".value * this.value");
本文介绍如何在DataGrid中实现价格与数量变化时总价自动更新的功能。通过使用三个模板列(PriceTextBox, QuantityTextBox, MoneyTextBox)并在ItemDataBound事件中设置文本框的onkeyup属性来完成联动。
405

被折叠的 条评论
为什么被折叠?



