我仅使用徽标作为示例。

我第一次尝试在 ASP.NET 中使用主题/皮肤,只是想弄清楚它们到底能让我做什么。

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

有帮助吗?

解决方案

可以容易地设定使用主题/皮肤的图像/标志。例如。如果有一个图像控制是这样的:

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

在你的皮肤文件,然后你可以specifiy的图像显示,例如在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属性。您可以设置最多的控件的属性的皮肤文件。

其他提示

我最近使用 ASP.net 主题创建了一个动态品牌网站,其中包含不同的徽标和其他图像,具体取决于将用户发送到该网站的附属机构。这听起来像是你想要的。为了实现这一目标,我执行了以下操作:

  1. 创建了多个主题,包括 CSS 和图像(未使用皮肤文件)。您可以在 css 中使用相对引用来显示存储在主题文件夹中的背景图像。
  2. 创建了我自己的页面类,该类重写 OnPreInit 事件并将 Page.Theme 设置为我确定应使用的任何主题。对我而言,这是基于 cookie,但也可以基于您想要识别用户的任何方式。
  3. 确保所有页面都继承自新页面类。

使用主题,你可以很容易地设置一个图像ASP.NET控制的源为每主题不同。 (此外,如果尺寸他们是不同的)。

主题概述: http://msdn.microsoft.com/en-我们/库/ ykzx33wh.aspx

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top