Я хочу Пакетное редактирование моего динамического RadGridView.
Динамический RadGridView: я создал gridview в PageInit, в отличие от определения в разметке.Недостаток этого метода в том, что он создает вид сетки для каждого поста назад.
Проблема в том, что когда я редактирую вторую строку, он публикует обратно и создает всю сетку в PageInit, а значение первой строки теряется какрезультат.Как я могу сохранить значения всех предыдущих строк, когда нажата кнопка редактирования следующей строки?
grdControl = New RadGrid()
grdControl.ID = "grid"
grdControl.Width = Unit.Pixel(1000)
grdControl.AllowSorting = True
grdControl.PagerStyle.Mode = GridPagerMode.NextPrevAndNumeric
grdControl.AllowPaging = True
grdControl.AllowAutomaticUpdates = False
grdControl.EnableEmbeddedScripts = False
grdControl.AllowMultiRowEdit = True
grdControl.MasterTableView.AutoGenerateColumns = False
grdControl.MasterTableView.EnableColumnsViewState = False
grdControl.MasterTableView.EditMode = GridEditMode.InPlace
grdControl.MasterTableView.EnableViewState = True
AddHandler grdControl.ItemDataBound, AddressOf grdControl_ItemDataBound
AddHandler grdControl.ItemCommand, AddressOf grdControl_ItemCommand
AddHandler grdControl.NeedDataSource, AddressOf grdControl_needDataSource
Событие ItemCommand RadGrid выглядит следующим образом
Protected Sub grdControl_ItemCommand(ByVal sender As Object, ByVal e As GridCommandEventArgs)
If e.CommandName = "Edit" Then
If TypeOf e.Item Is GridDataItem Then
Dim item As GridDataItem = e.Item
Dim Labelrow_ID As String = TryCast(item.FindControl("lbl1"), Label).Text
'Dim str As String = (DirectCast(item.DataItem, DataRowView))("emp_id").ToString()
item.BackColor = Drawing.Color.Pink
ElseIf e.CommandName = "UpdateAll" Then
For Each editedItem As GridEditableItem In grdControl.EditItems
Dim newValues As Hashtable = New Hashtable
'The GridTableView will fill the values from all editable columns in the hash
e.Item.OwnerTableView.ExtractValuesFromItem(newValues, editedItem)
SqlDataSource1.UpdateCommand = String.Format("Update Customers SET ContactName='{0}' WHERE CustomerID='{1}'", newValues("ContactName"), editedItem.GetDataKeyValue("CustomerID").ToString())
SqlDataSource1.Update()
editedItem.Edit = False
Next
End If
End If
End Sub
Я ожидаюсохранить значения всех строк, которые были отредактированы, чтобы я мог выполнить пакетное редактирование.