Dim quantity As String = CType(e.Item.Cells(2).Controls(0),TextBox).Text
请问这句代码是什么意思啊?特别是e.Item.Cells(2).Controls(0)是啥意思?
随便谈谈也可以啊,我是新手,请各位大哥多关照啊
...全文
4614打赏收藏
简单,解释一句代码。
我在一本书(Asp.net电子商务入门经典)中看到关于在DataGrid控件中修改数据 在DataGrid控件的UpdateCommand事件下,有这么一句代码: Dim quantity As String = CType(e.Item.Cells(2).Controls(0),TextBox).Text 请问这句代码是什么意思啊?特别是e.Item.Cells(2).Controls(0)是啥意思? 随便谈谈也可以啊,我是新手,请各位大哥多关照啊
public void MyDataGrid_Update(Object sender, DataGridCommandEventArgs e) {
// For bound columns the edited value is stored in a textbox,
// and the textbox is the 0th element in the column's cell
string item = e.Item.Cells[1].Text;
string qty = ((System.Web.UI.WebControls.TextBox)
e.Item.Cells[2].Controls[0]).Text;
string price = ((System.Web.UI.WebControls.TextBox)
e.Item.Cells[3].Controls[0]).Text;
// with a database, we'd use an update command. Since we're using an in-memory
// DataTable, we'll delete the old row and replace it with a new one
//remove old entry
CartView.RowFilter = "Item='"+item+"'";
if (CartView.Count > 0) {
//item exists in cart
CartView.Delete(0);
}
CartView.RowFilter = "";
//add new entry
DataRow dr = Cart.NewRow();
dr[0] = qty;
dr[1] = item;
dr[2] = price;
Cart.Rows.Add(dr);
MyDataGrid.EditItemIndex = -1;
BindGrid();
}
public void BindGrid() {
MyDataGrid.DataSource = CartView;
MyDataGrid.DataBind();
}
</script>
<body style="font: 10pt verdana">
<form runat="server">
<h3><font face="Verdana">Using an Edit Command Column in DataGrid</font></h3>