一般我们编辑数据时,会使用一个DetailsView+GridView的方法,但是当初次使用,数据源中没有一条数据,此时DetailsView、GridView都不会显示出来,屏幕一片空白,可在代码中进行解决:
Private Sub DetailsView1_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles DetailsView1.DataBound
If GridView1.Rows.Count = 0 Or GridView1.SelectedIndex = -1 Then
DetailsView1.ChangeMode(DetailsViewMode.Insert)
End If
End Sub
Private Sub DetailsView1_ItemDeleted(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DetailsViewDeletedEventArgs) Handles DetailsView1.ItemDeleted
GridView1.DataBind()
End Sub
Private Sub DetailsView1_ItemInserted(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DetailsViewInsertedEventArgs) Handles DetailsView1.ItemInserted
GridView1.DataBind()
End Sub
Private Sub DetailsView1_ItemUpdated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DetailsViewUpdatedEventArgs) Handles DetailsView1.ItemUpdated
GridView1.DataBind()
End Sub
Private Sub GridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView1.RowCommand
If e.CommandName = "Select" Then
DetailsView1.ChangeMode(DetailsViewMode.ReadOnly)
End If
End Sub
如果你有更简便的方法,欢迎提出。