2010-08-20 15 views
4

即使在底層數據源中沒有數據時如何顯示DetailsView?當DataSource中沒有數據時DetailsView不可見

問題是,當DetailsView不可見時,命令按鈕也不可見。所以我不能將新記錄插入數據庫。我想總是看到DetailsView,其DefaultMode設置爲ReadOnly。

如果這是不可能的,我想問一個解決這個問題的解決方法。

我想到的一種解決方法是檢查數據源是否有任何記錄。如果沒有,則programmaticaly將DefaultMode更改爲Insert。但是這會導致另一個問題 - 如何計算DataSource中的記錄數。

我所有的問題都涉及到ASP 3.5

回答

7

您需要添加一個EmptyDataTemplate:

<asp:DetailsView ID="MyDV" runat="server"> 
     <EmptyDataTemplate> 
      <asp:Button ID="InsertButton" runat="server" CommandName="New" /> 
     </EmptyDataTemplate> 
    </asp:DetailsView> 
+0

Thansk @Ben,你可以給模板用一個例子「插入」命令? – Wodzu 2010-08-20 12:26:23

+0

我已經更新了我的簡單示例。該按鈕應該將DetailsView轉換爲插入模式。 – 2010-08-20 12:49:26

+0

該按鈕是可見的,但按下它後DetailsView不會更改其模式。但是頁面很新鮮。我需要指定命令myslef嗎? (在瀏覽網頁後,我發現該命令的正確名稱是「插入」,但是現在我得到消息說明DetailsView必須處於插入模式... – Wodzu 2010-08-20 13:08:40

相關問題