📄 editabledatalist.aspx.vb
字号:
Option Explicit On
Option Strict On
Imports System
Imports System.Data
Partial Class EditableDataList
Inherits System.Web.UI.Page
Private alParamValues As ArrayList
Public Sub dlOrders_CancelCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles dlOrders.CancelCommand
dlOrders.EditItemIndex = -1
dlOrders.DataBind()
End Sub
Public Sub dlOrders_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles dlOrders.EditCommand
dlOrders.EditItemIndex = e.Item.ItemIndex
dlOrders.DataBind()
End Sub
Public Sub dlOrders_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles dlOrders.UpdateCommand
'Read-only OrderID value
Dim strOrderID As String = dlOrders.DataKeys(e.Item.ItemIndex).ToString
Dim strCustomerID As String = Nothing
Dim txtBox As TextBox
Dim strTextBox As String = Nothing
Dim intParam As Integer
alParamValues = New ArrayList
For intParam = 0 To dsOrders.UpdateParameters.Count - 1
strTextBox = "TextBox" + (intParam + 2).ToString
txtBox = CType(e.Item.FindControl(strTextBox), TextBox)
If intParam = dsOrders.UpdateParameters.Count - 1 Then
'@original_OrderID
alParamValues.Add(strOrderID)
Else
If txtBox Is Nothing Then
alParamValues.Add(Nothing)
Else
'Other parameter values
If txtBox.Text.Contains("$") Then
'Remove currency symbol for freight
alParamValues.Add(Mid(Trim(txtBox.Text), 2))
Else
alParamValues.Add(Trim(txtBox.Text))
End If
End If
End If
Next
'Execute the Update method
dsOrders.Update()
'Return to Item mode
dlOrders.EditItemIndex = -1
dlOrders.DataBind()
End Sub
Protected Sub dsOrders_Updating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.SqlDataSourceCommandEventArgs) Handles dsOrders.Updating
Try
Dim strUpdateCmd As String = e.Command.CommandText
Dim intCtr As Integer
For intCtr = 0 To e.Command.Parameters.Count - 1
Dim strName As String = e.Command.Parameters(intCtr).ParameterName
If alParamValues(intCtr).ToString = "" Or alParamValues(intCtr) Is Nothing Then
e.Command.Parameters(intCtr).Value = DBNull.Value
Else
e.Command.Parameters(intCtr).Value = alParamValues(intCtr)
End If
Next
Catch exc As Exception
'Ignore
End Try
End Sub
Protected Sub dsOrders_Updated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.SqlDataSourceStatusEventArgs) Handles dsOrders.Updated
Dim strUpdateCmd As String = e.Command.CommandText
Dim intCtr As Integer
For intCtr = 0 To e.Command.Parameters.Count - 1
Dim strName As String = e.Command.Parameters(intCtr).ParameterName
Dim strValue As String = e.Command.Parameters(intCtr).Value.ToString
Next
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -