WPF 使用皮膚影響按鈕自定義
阿新 • • 發佈:2018-05-23
wpf nta https pub -- Edito public nth light
在WPF項目中使用了 Theme的皮膚後,發現自定義的按鈕全部都是 皮膚裏面的樣式,如下圖:
要自定義樣式,只有不給按鈕使用皮膚樣式。
如果想給某一個控件使用樣式,在前端Xaml的控件中,設置一下屬性即可:
dx:ThemeManager.ThemeName="Seven" //Seven是一個樣式名稱。(添加引用)
<dxd:LayoutPanel Caption="工程列表" dx:ThemeManager.ThemeName="Seven" AllowClose="False" AllowContextMenu="False"
AllowFloat="False" Name="panelGClist" AllowDrag="False" AllowDrop="False" MinHeight="100" AllowHide="False" AllowSizing="False"> . . . </dxd:LayoutPanel>
//設置皮膚顏色 使用該方法,在Main/窗體_Load方法中應用,整個項目將使用所調用的皮膚樣式。 public void SetThemes(object themName) { Theme the= (Theme)themName; DevExpress.Xpf.Core.ThemeManager.ApplicationThemeName= the.Name; }
使用:
SetThemes(Theme.主題名);
在App.xaml中: <Application.Resources>
<--此處的skin.xml可以是其他的樣式文件,比如網上常有的別人寫好的Xaml--> <ResourceDictionary Source="skin.xml" /> </Application.Resources>
上文中App.xaml中寫的引用,可能在主界面不會有作用,但是主界面上其他的彈出框有樣式。
對於上面引用的樣式,我們可以借助工具重新寫樣式, 這個工具的使用方法在網上有教程。https://documentation.devexpress.com/SkinEditor/2547/Create-Custom-Skins/Create-New-Skins
在該工具中新建一個樣式,可以選擇已有的樣式模板進行編輯:
WPF 使用皮膚影響按鈕自定義