1

我仅使用徽标作为示例。

我第一次尝试在 ASP.NET 中使用主题/皮肤 - 只是想弄清楚它们将允许我做什么。

据我所知,主题主要用于更改按钮等控件,可以使用图像进行修改。但是有没有办法可以使用主题为“徽标”或其他图形皮肤?阅读文档我无法立即看到这样做的方法。

4

3 回答 3

4

您可以使用主题/皮肤轻松设置图像/徽标。例如,如果您有这样的图像控件:

<asp:Image id="imgLogo" runat="server" SkinId="logo" ... />

在您的皮肤文件中,您可以指定要显示的图像,例如在 App_Themes/theme1/logo.skin 中:

<asp:Image runat="server" SkinId="logo" ImageUrl="~/images/logo1.png" />

在 App_Themes/theme2/logo.skin 中:

<asp:Image runat="server" SkinId="logo" ImageUrl="~/images/logo2.png" />

这不限于 ImageUrl 属性。您可以从皮肤文件中设置控件的大部分属性。

于 2009-01-12T22:34:13.923 回答
1

我最近使用 ASP.net 主题创建了一个具有不同徽标和其他图像的动态品牌站点,具体取决于将用户发送到该站点的附属公司。这听起来像你想要的。为此,我做了以下工作:

  1. 创建了几个主题,包括 css 和图像(没有使用皮肤文件)。您可以在 css 中使用相对引用来显示存储在主题文件夹中的背景图像。
  2. 创建了我自己的页面类,它覆盖了 OnPreInit 事件并将 Page.Theme 设置为我确定应该使用的任何主题。这对我来说是基于 cookie 的,但可以基于您想要识别用户的任何方式。
  3. 确保所有页面都继承自新页面类。
于 2009-01-12T23:14:29.367 回答
0

使用主题,您可以轻松地将 Image ASP.NET 控件的源设置为每个主题不同。(如果它们不同,还有尺寸)。

主题概述:http: //msdn.microsoft.com/en-us/library/ykzx33wh.aspx

于 2009-01-12T22:29:16.993 回答