0

我在 asp.net 应用程序中有一个属性

ABPS.PRR.WEB.CurrentSession.Theme

我将它设置在 aspx 页面中的 @Page 指令中,例如:

<%@ Page StylesheetTheme="ABPS.PRR.WEB.CurrentSession.Theme"  Title="Default" ... %>

但我收到运行时错误

Parser Error Message: Theme 'ABPS.PRR.WEB.CurrentSession.Theme' cannot be found in the application or global theme directories.

如何在页面指令中实现这一点?

4

3 回答 3

1

如果要为页面的 StyleSheetTheme 属性设置其他值,则需要覆盖它:

public override string StyleSheetTheme
{
    get
    {
        return ABPS.PRR.WEB.CurrentSession.Theme;
    }
    set
    {
    }
}

但是如果你想改变 Theme 属性,只需在 Page_PreInit 事件中设置它的值:

protected void Page_PreInit(object sender, EventArgs e)
{
    this.Theme = ABPS.PRR.WEB.CurrentSession.Theme;
}
于 2012-01-05T10:32:17.760 回答
0

您可以在代码中设置它。

把它放在 Page_PreInit 方法中。

Page.Theme = ABPS.PRR.WEB.CurrentSession.Theme

或者

Page.StyleSheetTheme = ABPS.PRR.WEB.CurrentSession.Theme
于 2011-08-24T11:55:54.967 回答
0

StylesheetTheme需要一个主题名称,而您以错误的方式提供它。

如果要在运行时设置主题,则需要将其存储在会话变量中,您可以这样做...

protected void Page_PreInit(object sender, EventArgs e)
{
    Page.StylesheetTheme = ABPS.PRR.WEB.CurrentSession.Theme;
}
于 2011-08-24T11:56:36.143 回答