Как изменить стандартный LookAndFeel для всего приложения? - PullRequest
3 голосов
/ 25 января 2011

На этой странице перечислены способы изменения LookandFeel по умолчанию для приложения .net с использованием DevExpress 10.2.Это не работает для меня.

Мой код (в Main())

imports DevExpress.LookAndFeel

DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName = "Caramel"
DevExpress.LookAndFeel.UserLookAndFeel.Default.UseWindowsXPTheme = False
DevExpress.LookAndFeel.UserLookAndFeel.Default.LookAndFeelStyle.Office2003

Мои пользователи ненавидят эту новую серую тему и хотят, чтобы Карамель вернул ... предложения?

Ответы [ 5 ]

4 голосов
/ 04 февраля 2011

Ваш код должен работать. Но вы должны убедиться, что все ваши формы получены из DevExpress.XtraEditors.XtraForm (для Winforms-Application). В противном случае LookAndFeel не будет распространен на элементы управления в формах. В целом: если вы поместите элемент управления devexpress в контейнер, который не является производным от контейнера devexpress, внешний вид не изменится.

Изменить: оригинальный вопрос и ответ был для DevExpress v 10.x. Начиная с DevExpress V 2011.2, вам нужно ссылаться на библиотеку DevExpress.BonusSkins.vXX.Y в вашем проекте и зарегистрировать бонусные скины через

DevExpress.UserSkins.BonusSkins.Register();

Бонусные библиотеки скинов называются, например, "DevExpress.BonusSkins.v12.1.DLL" и можно найти в папке "\ Bin \ Framework" вашей папки DevExpress.

Полный код будет выглядеть так:

DevExpress.UserSkins.BonusSkins.Register();
DefaultLookAndFeel defaultLF = new DefaultLookAndFeel();
defaultLF.LookAndFeel.UseDefaultLookAndFeel = true;
2 голосов
/ 19 октября 2012

Когда вы создаете проект, который использует любой компонент Developer Express, в него добавляется ссылка на библиотеку DevExpress.Utils. Эта библиотека содержит вспомогательные классы, общие для всех компонентов, а также предоставляет некоторые скины по умолчанию

(например, DevExpress Style, Metropolis, VS2010, Office 2010 Blue и т. Д.).

Другие скины

(Карамель, Кофе, Жидкое Небо, Звездная пыль и др.)

реализовано в библиотеке DevExpress.BonusSkins

Чтобы зарегистрировать скины, поставляемые с библиотекой DevExpress.BonusSkins, вызовите статический метод Register класса DevExpress.UserSkins.BonusSkins.

[STAThread]
static void Main() {
    // Skin registration. 
    DevExpress.UserSkins.BonusSkins.Register();
    Application.Run(new Form1());
}

См. эту ссылку для более подробной информации.

1 голос
/ 19 октября 2013

После того, как я много прочитал, мне это понравилось, и я отлично справился!

1 - Создайте модуль и напишите этот код:

Imports DevExpress.LookAndFeel

Module Program
<STAThread()> _
Public Sub Main() 

   DevExpress.UserSkins.BonusSkins.Register()
   DevExpress.UserSkins.OfficeSkins.Register()

   DevExpress.LookAndFeel.UserLookAndFeel.Default.UseWindowsXPTheme = False
   DevExpress.LookAndFeel.UserLookAndFeel.Default.UseDefaultLookAndFeel = True
   DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName = "Caramel" 'For Example!

   DevExpress.Skins.SkinManager.EnableMdiFormSkins()
   DevExpress.Skins.SkinManager.EnableFormSkins()

   Application.Run(New Form1)

End Sub

End Module

2 -И ЯВНО изменить эту строку в каждой форме (Form1.Designer.vb):

Partial Class Form1

REM Inherits System.Windows.Forms.Form

Inherits DevExpress.XtraEditors.XtraForm

End Class

Удачи!

1 голос
/ 25 января 2011

Следующий код должен работать для вас:

 DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName = "Caramel"
 DevExpress.LookAndFeel.UserLookAndFeel.Default.UseWindowsXPTheme = False
0 голосов
/ 02 марта 2012

Попробуйте установить для LookAndFeelStyle значение «Skin»:

DevExpress.LookAndFeel.UserLookAndFeel.Default.LookAndFeelStyle.Skin
...