我试图使用从皮肤文件创建的skinid在运行时将皮肤应用于标签。主题文件夹名为skin1。 SkinID称为错误。当我尝试使用skinid将Skin1主题文件夹通过Page_PreInt方法应用于标签时,似乎没有任何事情发生。
代码:
protected void Page_PreInit(object sender, EventArgs e)
{
Session["Mytheme"] = "Skin1";
lblMessage.SkinID = Session["Mytheme"].ToString();
}
Hmtl中的标签:
<asp:Label ID="lblMessage" runat="server" SkinID="Error" Text="HELLO WORLD">
</asp:Label>
主题文件夹中的Skin文件:
<asp:Label runat="server" SkinID="Error" ForeColor="Red"/>
答案 0 :(得分:1)
要为这一个控件设置皮肤,您需要应用主题,但在页面级别关闭它,然后在您想要皮肤的控件上关闭它。 E.g。
<%@ Page Theme="skin1" EnableTheming="false" %>
然后设置皮肤ID就足够了:
<asp:Label ID="lblMessage" runat="server" SkinID="Error" Text="HELLO WORLD" EnableTheming="true">
</asp:Label>
或以编程方式:
Page.EnableTheming = false;
Page.Theme = "skin1";
lblMessage.SkinID = "Error";
lblMessage.EnableTheming = true;