共用方式為


MultiView 和 View Web 伺服器控制項概觀

更新:2007 年 11 月

MultiViewView Web 伺服器控制項是當做其他控制項和標記的容器,並且提供輕鬆呈現資訊替代檢視的方式。

這個主題包含:

  • 案例

  • 背景

  • 程式碼範例

  • 類別參考

案例

您可以使用 MultiViewView 控制項,執行下列工作:

  • 根據使用者選擇或其他條件,提供控制項的替代組合。例如,您可以讓使用者從選項清單中進行選取,每個選項都在不同的 View 控制項中加以設定。然後您可以顯示包含使用者所選擇選項的 View 控制項。您可以使用 MultiViewView 控制項當做替代方案,建立多重 Panel 控制項。

  • 建立多頁表單。MultiViewView 控制項能夠提供類似 Wizard 控制項的行為。Wizard 控制項特別適合用在建立使用者逐步填入的表單。Wizard 控制項也包含對更多內建 UI 項目的支援,例如頁首及頁尾、[上一步] 和 [下一步] 按鈕以及範本。如果您想要建立根據條件變更 (而不是循序變更) 的顯示,或是不需要 Wizard 控制項支援的額外功能,則可以使用 MultiView 控制項來代替 Wizard

回到頁首

背景

MultiView 控制項是當做一個或多個 View 控制項的外部容器。而 View 控制項可以包含任何標記與控制項的組合。

MultiView 控制項會一次顯示一個 View 控制項,以公開 View 控制項內的標記和控制項。藉由設定 MultiView 控制項的 ActiveViewIndex 屬性,您可以指定目前可以看見的 View 控制項。

呈現檢視控制項內容

如果並未選取 View 控制項,就不會呈現到頁面。不過,每次呈現頁面時,就會建立所有 View 控制項中的所有 Web 伺服器控制項執行個體 (Instance),並將其值儲存為頁面之檢視狀態的一部分。

除了 View 控制項的內容之外,MultiView 控制項和個別 View 控制項都不會在頁面上呈現任何標記。例如,控制項不會使用與 Panel 控制項相同的方式呈現 div 項目。它們也不支援能夠整個套用至目前 View 控制項的外觀屬性。但是您可以將佈景主題指派給 MultiViewView 控制項,就會將佈景主題指派給目前 View 控制項的所有子控制項。

參考控制項

每個 View 控制項,都支援包含 View 控制項之控制項集合的 Controls 屬性。您也可以在程式碼中個別參考 View 控制項中的控制項。如需詳細資訊,請參閱以程式設計方式存取 ASP.NET 控制項

在檢視間巡覽

您可以將 MultiView 控制項的 ActiveViewIndex 屬性,設定為想要顯示之 View 控制項的索引值,以便在檢視之間移動。MultiView 控制項也包含對巡覽按鈕的支援,您可以將這些按鈕加入至每個 View 控制項。

若要建立巡覽按鈕,您可以將按鈕控制項 (ButtonLinkButtonImageButton) 加入至每個 View 控制項。然後將每個按鈕的 CommandNameCommandArgument 屬性設定為保留值,使得 MultiView 控制項移至另一個檢視。下表列出保留的 CommandName 數值以及對應的 CommandArgument 數值。

CommandName 值

CommandArgument 值

NextView

(沒有值)

PrevView

(沒有值)

SwitchViewByID

要切換的 View 控制項 ID

SwitchViewByIndex

要切換的 View 控制項索引編號

下列範例程式碼示範的是含有三個 View 控制項的 MultiView 控制項。每個 View 控制項包含移動至特定 View 控制項的 Button 控制項。

<asp:MultiView ID="MultiView1"  ActiveViewIndex="0">
  <asp:View ID="View1" >
    View 1<br />
    <br />
    <asp:Button ID="Button1"  
      CommandArgument="View2" 
      CommandName="SwitchViewByID"
      Text="Go to View2" />
  </asp:View>
  <asp:View ID="View2" >
    View 2<br />
    <br />
    <asp:Button ID="Button2"  
      CommandArgument="View3" 
      CommandName="SwitchViewByID"
      Text="Go to View 3" />
  </asp:View>
  <asp:View ID="View3" >
    View 3<br />
    <br />
    <asp:Button ID="Button3"  
      CommandArgument="View1" 
      CommandName="SwitchViewByID"
      Text="Go to View 1" />
  </asp:View>
</asp:MultiView>

回到頁首

程式碼範例

HOW TO:將 MultiView Web 伺服器控制項加入至 Web Form 網頁 (Visual Studio)

回到頁首

類別參考

下表列出 MultiViewView 控制項的相關類別。

成員

描述

MultiView

MultiView 控制項的主要類別。

ViewCollection

表示集合,可讓 MultiView 控制項維護其子控制項的清單。

View

View 控制項的主要類別。

MultiViewControlBuilder

與剖析器 (Parser) 互動以建置 MultiView 控制項。若要建立 MultiView 衍生控制項的自訂控制項產生器 (Builder),您需要從這個類別繼承。

回到頁首

請參閱

參考

Panel Web 伺服器控制項概觀

Wizard Web 伺服器控制項概觀