📄 datagridedittemplate.aspx
字号:
<%@ Import Namespace="System.Data.SqlClient" %>
<Script Runat="Server">
Dim conNorthwind As SqlConnection
Dim cmdSql As SqlCommand
Dim strSql As String
Sub Page_Load
conNorthwind = New SqlConnection( "Server=localhost;UID=sa;PWD=secret;Database=Northwind" )
If Not IsPostBack Then
BindDataGrid
End If
End Sub
Sub BindDataGrid
cmdSql = New SqlCommand( "Select * From Products", conNorthwind )
conNorthwind.Open()
dgrdProducts.DataSource = cmdSql.ExecuteReader()
dgrdProducts.DataBind()
conNorthwind.Close()
End Sub
Sub dgrdProducts_EditCommand( s As Object, e As DataGridCommandEventArgs )
dgrdProducts.EditItemIndex = e.Item.ItemIndex
BindDataGrid
End Sub
Sub dgrdProducts_UpdateCommand( s As Object, e As DataGridCommandEventArgs )
Dim intProductID As Integer
Dim txtUnitPrice As TextBox
Dim decUnitPrice As Decimal
If IsValid Then
intProductID = dgrdProducts.DataKeys( e.Item.ItemIndex )
txtUnitPrice = e.Item.FindControl( "txtUnitPrice" )
decUnitPrice = txtUnitPrice.Text
strSql = "Update Products Set UnitPrice=@UnitPrice " _
& "Where ProductID=@ProductID"
cmdSql = New SqlCommand( strSql, conNorthwind )
cmdSql.Parameters.Add( "@UnitPrice", decUnitPrice )
cmdSql.Parameters.Add( "@ProductID", intProductID )
conNorthwind.Open()
cmdSql.ExecuteNonQuery()
conNorthwind.Close()
dgrdProducts.EditItemIndex = -1
BindDataGrid
End If
End Sub
Sub dgrdProducts_CancelCommand( s As Object, e As DataGridCommandEventArgs )
dgrdProducts.EditItemIndex = -1
BindDataGrid
End Sub
</Script>
<html>
<head><title>DataGridEditTemplate.aspx</title></head>
<body>
<form Runat="Server">
<asp:DataGrid
ID="dgrdProducts"
OnEditCommand="dgrdProducts_EditCommand"
OnUpdateCommand="dgrdProducts_Updatecommand"
OnCancelCommand="dgrdProducts_CancelCommand"
DataKeyField="ProductID"
AutoGenerateColumns="False"
CellPadding="10"
HeaderStyle-BackColor="Salmon"
Runat="Server">
<Columns>
<asp:BoundColumn
HeaderText="Product Name"
DataField="ProductName"
ReadOnly="True" />
<asp:TemplateColumn>
<HeaderTemplate>
Price
</HeaderTemplate>
<ItemTemplate>
<%# Container.DataItem( "UnitPrice" ) %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox
ID="txtUnitPrice"
Text='<%# Container.DataItem( "UnitPrice" )%>'
Runat="Server" />
<asp:RequiredFieldValidator
ControlToValidate="txtUnitPrice"
Display="Dynamic"
Text="Required!"
Runat="Server" />
<asp:CompareValidator
ControlToValidate="txtUnitPrice"
Display="Dynamic"
Text="Must be Currency!"
Operator="DataTypeCheck"
Type="Currency"
Runat="Server" />
</EditItemTemplate>
</asp:TemplateColumn>
<asp:EditCommandColumn
EditText="Edit!"
UpdateText="Update!"
CancelText="Cancel!" />
</Columns>
</asp:DataGrid>
</form>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -