📄 grid14.aspx
字号:
<%@ Import Namespace="System.Data" %>
<html>
<script language="VB" runat="server">
Dim Cart As DataTable
Dim CartView As DataView
Sub Page_Load(sender As Object, e As EventArgs)
Dim dr As DataRow
Dim I As Integer
If Session("MyCart") Is Nothing Then
Cart = New DataTable()
Cart.Columns.Add(new DataColumn("Qty", GetType(String)))
Cart.Columns.Add(new DataColumn("Item", GetType(String)))
Cart.Columns.Add(new DataColumn("Price", GetType(String)))
Session("MyCart") = Cart
For I = 1 To 4
dr = Cart.NewRow()
If (i Mod 2 <> 0) Then
dr(0) = "2"
Else
dr(0) = "1"
End If
dr(1) = "物品" & i.ToString
dr(2) = (1.23 * (i + 1)).ToString
Cart.Rows.Add(dr)
Next
Else
Cart = Session("MyCart")
End If
CartView = New DataView(Cart)
CartView.Sort="Item"
If Not IsPostBack Then
BindGrid
End If
End Sub
Sub MyDataGrid_Edit(sender As Object, e As DataGridCommandEventArgs)
MyDataGrid.EditItemIndex = e.Item.ItemIndex
BindGrid
End Sub
Sub MyDataGrid_Cancel(sender As Object, e As DataGridCommandEventArgs)
MyDataGrid.EditItemIndex = -1
BindGrid
End Sub
Sub MyDataGrid_Update(sender As Object, e As DataGridCommandEventArgs)
Dim qtyText As TextBox = e.Item.Cells(2).Controls(0)
Dim priceText As TextBox = e.Item.Cells(3).Controls(0)
Dim item As String = e.Item.Cells(1).Text
Dim qty As String = qtyText.Text
Dim price As String = priceText.Text
CartView.RowFilter = "Item='" & item & "'"
If CartView.Count > 0 Then
CartView.Delete(0)
End If
CartView.RowFilter = ""
Dim dr As DataRow = Cart.NewRow()
dr(0) = qty
dr(1) = item
dr(2) = price
Cart.Rows.Add(dr)
MyDataGrid.EditItemIndex = -1
BindGrid
End Sub
Sub BindGrid()
MyDataGrid.DataSource = CartView
MyDataGrid.DataBind
End Sub
</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 + -