[摘自MSDN] ASP.Net2.0学习 [2] 主题 6 :如何:以编程方式应用 ASP.NET 主题

ASP.NET
如何:以编程方式应用 ASP.NET 主题

除了在页面声明和配置文件中指定主题和外观首选项之外,还可以通过编程方式应用主题。可以通过编程方式同时对页面主题和样式表进行设置。但是,应用每种类型的主题的过程有所不同。

Note注意

下文引用的主题不包括在 ASP.NET 中。若要创建自定义主题,请参见如何:定义 ASP.NET 主题

以编程方式应用页面主题

  • 在页面的 PreInit 方法的处理程序中,设置页面的 Theme 属性。

    下面的代码示例演示如何根据查询字符串中传递的值按条件设置页面主题。

    Visual Basic
    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 访问器中返回样式表主题的名称。

    下面的代码示例演示如何将名为 BlueTheme 的主题设置为某个页面的样式表主题:

    Visual Basic
    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 属性。

    Visual Basic
    Sub Page_PreInit(ByVal sender As Object, _
        ByVal e As System.EventArgs) _
        Handles Me.PreInit
        Calendar1.SkinID = "BlueTheme"
        End Sub

     

    void Page_PreInit(object sender, EventArgs e)
        {
        Calendar1.SkinID = "MySkin";
        }

posted on 2007-09-29 22:22  leup  阅读(219)  评论(0编辑  收藏  举报

导航