Темы не устанавливаются
Я использую этот код для изменения темы приложения
protected void Page_PreInit(object sender, EventArgs e)
{
MasterPage m = Master;
string theme = Session["theme"].ToString();
Page.Theme = theme;
}
Тема, которая есть в Session, - это тема Aqua, но она сбрасывается до стандартной. Я использую темы devexpress с элементами управления devexpress.
Кроме того, это хороший способ установить тему, есть ли способ, которым вы можете настроить свою программу темы, вместо того, чтобы делать это постранично
3 ответа
Вы можете применить тему ко всему сайту, добавив
<pages Theme="themeName">
элемент к <system.web>
раздел файла Web.config.
Это автоматически применяет тему ко всем страницам на вашем сайте.
Нередко объявлять предков для всех страниц в web.config
<pages pageBaseType="NicolasPierre.Page" etc
и затем поместите свою логику в переопределяющий метод OnPreInit. Может быть полезно и для чего-то другого, например, для заголовков.
Чтобы изменить свою тему (чтобы вам не нужно было повторять ее при создании элементов управления), поместите это в ваш global.asax
protected void Application_PreRequestHandlerExecute(object sender, EventArgs e)
{
DevExpressHelper.Theme = "Aqua";
}
Вы можете использовать инструмент DevExpress "ThemeDeployer", чтобы скопировать файлы темы, которые вы хотите:)