共用方式為


HOW TO:以程式設計方式套用 ASP.NET 佈景主題

更新:2007 年 11 月

除了在網頁宣告和組態檔中指定主題和面板喜好設定外,您也可以程式設計方式套用佈景主題。您可以程式設計方式同時設定網頁主題和樣式表主題,但是套用各種主題類型的程序有所不同。

注意事項:

下面所參考的佈景主題並未包含在 ASP.NET 中。若要建立自訂佈景主題,請參閱 HOW TO:定義 ASP.NET 頁面佈景主題

若要以程式設計方式套用網頁主題

  • 在網頁的 PreInit 方法處理常式中,設定網頁的 Theme 屬性。

    下列範例顯示如何根據查詢字串中傳遞的值,有條件地設定網頁的主題。

    Protected Sub Page_PreInit(ByVal sender As Object, _
            ByVal e As System.EventArgs) _
            Handles Me.PreInit
        Select Case Request.QueryString("theme")
            Case "Blue"
                Page.Theme = "BlueTheme"
            Case "Theme2"
                Page.Theme = "PinkTheme"
        End Select
    End Sub
    
    protected void Page_PreInit(object sender, EventArgs e)
    {
        switch (Request.QueryString["theme"])
        {
            case "Blue":
                Page.Theme = "BlueTheme";
                break;
            case "Pink":
                Page.Theme = "PinkTheme";
                break;
        }
    }
    

若要以程式設計方式套用樣式表主題

  • 在網頁程式碼中覆寫 StyleSheetTheme 屬性,然後在 get 存取子 (Accessor) 中傳回樣式表主題的名稱。

    下列程式碼範例會示範如何將名為 BlueTheme 的主題,設定為網頁的樣式表主題:

    Public Overrides Property StyleSheetTheme() As String
       Get
           Return "BlueTheme"
       End Get
       Set(ByVal value As String)
       End Set
    End Property
    
    public override String StyleSheetTheme
    {
      get { return "BlueTheme"; }
    }
    

若要以程式設計方式套用控制項面板

  • 在網頁的 PreInit 方法處理常式中,設定控制項的 SkinID 屬性。

    下列程式碼範例會示範如何設定 Calendar 控制項的 SkinID 屬性。這個範例假設頁面的主題已經設定完成。

    Sub Page_PreInit(ByVal sender As Object, _
            ByVal e As System.EventArgs) _
            Handles Me.PreInit
        Calendar1.SkinID = "CustomSkin"
    End Sub
    
    void Page_PreInit(object sender, EventArgs e)
    {
        Calendar1.SkinID = "CustomSkin";
    }
    

請參閱

工作

HOW TO:定義 ASP.NET 頁面佈景主題

概念

ASP.NET 佈景主題和面板概觀