Есть ли в ASP.NET встроенная поддержка создания логотипов скинов?

Я использую логотипы в качестве примера.

Я пытаюсь использовать темы / скины впервые в ASP.NET - и просто пытаюсь выяснить, что именно они мне позволят делать.

Насколько я могу судить, темы в первую очередь предназначены для изменения элементов управления, таких как кнопки, которые можно изменять с помощью изображений. Но есть ли способ, которым я могу создать "логотип" или другую графику, используя темы? Читая документацию, я не сразу увидел способ сделать это.

3 ответа

Решение

Вы можете легко установить изображение / логотип, используя темы / скины. Например, если у вас есть такой элемент управления изображением:

<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. Вы можете установить большинство свойств элементов управления из файлов скинов.

Недавно я использовал темы ASP.net для создания динамически создаваемого сайта с различными логотипами и другими изображениями в зависимости от партнера, который отправил пользователя на сайт. Это звучит как то, что вы собираетесь. Для этого я сделал следующее:

  1. Создано несколько тем, включая CSS и изображения (файлы скинов не использовались). Вы можете использовать относительные ссылки в вашем CSS для отображения фоновых изображений, хранящихся в папке вашей темы.
  2. Создал свой собственный класс страницы, который переопределяет событие OnPreInit и устанавливает Page.Theme в соответствии с любой темой, которую я определяю, следует использовать. Это основано на куки для меня, но может быть основано на любом способе идентификации пользователя.
  3. Убедитесь, что все ваши страницы наследуются от вашего нового класса страниц.

Используя темы, вы можете легко установить источник элемента управления Image ASP.NET для разных тем. (также размеры, если они были разные).

Обзор тем: http://msdn.microsoft.com/en-us/library/ykzx33wh.aspx

Другие вопросы по тегам