📄 grid15.aspx
字号:
<%@ Import Namespace="System.Data" %>
<html>
<script language="C#" runat="server">
DataTable Cart;
DataView CartView;
void Page_Load(Object sender, EventArgs e) {
if (Session["MyCart"] == null) {
Cart = new DataTable();
Cart.Columns.Add(new DataColumn("Qty", typeof(string)));
Cart.Columns.Add(new DataColumn("Item", typeof(string)));
Cart.Columns.Add(new DataColumn("Price", typeof(string)));
Session["MyCart"] = Cart;
for (int i=1; i<5; i++) {
DataRow dr = Cart.NewRow();
dr[0] = ((int)(i%2)+1).ToString();
dr[1] = "物品" + i.ToString();
dr[2] = ((double)(1.23 * (i+1))).ToString();
Cart.Rows.Add(dr);
}
}
else {
Cart = (DataTable)Session["MyCart"];
}
CartView = new DataView(Cart);
CartView.Sort = "Item";
if (!IsPostBack) {
BindGrid();
}
}
public void MyDataGrid_Edit(Object sender, DataGridCommandEventArgs e) {
MyDataGrid.EditItemIndex = (int)e.Item.ItemIndex;
BindGrid();
}
public void MyDataGrid_Cancel(Object sender, DataGridCommandEventArgs e) {
MyDataGrid.EditItemIndex = -1;
BindGrid();
}
public void MyDataGrid_Update(Object sender, DataGridCommandEventArgs e) {
string item = e.Item.Cells[1].Text;
string qty = ((TextBox)e.Item.Cells[2].Controls[0]).Text;
string price = ((TextBox)e.Item.Cells[3].Controls[0]).Text;
CartView.RowFilter = "Item='"+item+"'";
if (CartView.Count > 0) {
CartView.Delete(0);
}
CartView.RowFilter = "";
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">用DataGrid控制元件编辑数据的例子</font></h3>
<asp:DataGrid id="MyDataGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
OnEditCommand="MyDataGrid_Edit"
OnCancelCommand="MyDataGrid_Cancel"
OnUpdateCommand="MyDataGrid_Update"
AutoGenerateColumns="false"
>
<Columns>
<asp:EditCommandColumn
EditText="编辑"
CancelText="取消"
UpdateText="更新"
ItemStyle-Wrap="false"
HeaderText="编辑命令"
HeaderStyle-Wrap="false"
/>
<asp:BoundColumn HeaderText="物品" ReadOnly="true" DataField="Item"/>
<asp:BoundColumn HeaderText="质量" DataField="Qty"/>
<asp:BoundColumn HeaderText="价格" DataField="Price"/>
</Columns>
</asp:DataGrid>
</form>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -