Можно сделать вставку из шаблона EmptyDataTemplate, изготовив ее вручную. Я использую просмотр списка для отображения статического числа строк на основе уникального фильтрованного элемента. Я в основном перечисляю все статические атрибуты объекта. В случае, когда фильтруется новый объект, который не имеет никаких связанных с ним атрибутов, я использую шаблон EmptyDataTemplate списка для отображения HTMLTable, содержащего элементы управления asp.net для сбора данных. У меня есть командная кнопка в таблице, которую я оцениваю с помощью ListView_ItemCommand. Если CommandName совпадает с именем кнопки «Вставить» в EmptyDataItem, я использую метод ListView.Controls (0) .FindControl, чтобы найти мою таблицу. Затем я перебираю таблицу и вставляю данные, найденные в каждой строке. Я включил, как найти элемент управления в htmltable. В моем коде я на самом деле собираю кучу элементов управления, затем создаю sql и использую SQLConnection для выполнения вставки.
Protected Sub ListView_ItemCommand(sender As Object, e As System.Web.UI.WebControls.ListViewCommandEventArgs) Handles ListView.ItemCommand
Select Case e.CommandName
Case "Submit"
Dim edt As HtmlTable = ListView.Controls(0).FindControl("myhtmltable")
Dim ddl As DropDownList = CType(edt.FindControl("mydropdownlist"), DropDownList)
'Perform Insert
Case "Some other commandname"
End Select
End Sub
Вам все равно нужно будет выполнить проверку ошибок и databind () и обновить свой просмотр списка.
Это лучший способ. Может и нет ... Но это возможно.
~ Ian