DevExpress控件之主题
DevExpress控件的主题不仅多种多样,而且非常美观大方,以对完美观念不强的我们绝对是个惊喜,当然了,对于我们的用户也是一个福音,因为他们再对不用抱怨我人软件界面是如何的粗造了。
l 如何打造美丽的界面?
l 如何快速的更换漂亮的主题?
l 如何快速的使用类似于Offcie2007的操作面板?
......
本节课程将一一解答,带您进入美轮美奂的DevExpress世界!
1. 如何建造可换主题的窗口程序
当我们打开或新建一个“Windows程序”,系统默认会有一个From,名称为From1。请注意,此时的”Form1”继承的是Windows 自带的Form,即”System.Windows.Forms”。而这个Form是不会应用DevExpress的主题样式的。
那么我们怎么样才可以让Form应用这些样式呢?
当我们安装完DevExpress控件包之后,在添加新项窗口中我们会看到多出的几项:如图:
分别是:DevExpress Form v9.1、DevExpress RibbomForm v9.1和DevExpressUsercontrol v9.1,其中“v9.1”是版本号。
当我们在新建“Form”时,选择DevExpress Form为模板,就可以应用DevExpress的漂亮主题了。此时,From继承的是“DevExpress.XtraEditors.XtraForm”。默认情况下,系统主题有:
Caramel
Money Twins
Lilian
The Asphalt World
iMaginary
Black
Blue
这几种主题,具体效果自己写个例子看看吧! 但DevExpress提供了更多的主题, 我们如果应用的话,必须添加以下引用:
DevExpress..OfficeSkins.v9.1;
DevExpress.BonusSkins.v9.1;
除此之外,必须在“Program.cs”文件在添加如下代码:
view plaincopy to clipboardprint?
1. DevExpress.UserSkins.OfficeSkins.Register();
2. DevExpress.UserSkins.BonusSkins.Register();
3. Application.EnableVisualStyles();
4. Application.SetCompatibleTextRenderingDefault(false);
5. if (!DevExpress.Skins.SkinManager.AllowFormSkins)
6. DevExpress.Skins.SkinManager.EnableFormSkins();
7. Application.Run(new frmMain());
其中“OfficeSkins”中的主题有:
Office 2007 Blue
Office 2007 Black
Office 2007 Silver
Office 2007 Green
Office 2007 Pink
“BonusSkins”的主题有:
Coffee
Liquid Sky
London Liquid Sky
Glass Oceans
Stardust
Xmas 2008 Blue
Valentine
McSkin
Summer 2008
Pumpkin
Dark Side
Springtime
2. 如何快速的更换漂亮的主题
通过“foreach(SkinContainer cnt in SkinManager.Default.Skins){}”可以获取现有所有遥主题名称,可以把获取的主题添另到菜单上,让用户选择自己喜爱的主题样式。
通过对“DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName”设置主题名称,就可以轻松的更换主题,是不是很方便?!
下面就写一个例子,展示一下它们漂亮的“皮肤”吧!
3. 添加类似于Office2007的窗口
Microsoft Office 2007窗口的操作面板非常漂亮,值得让人欣喜的是DevExpress里不仅有“RibbonControl”这样的控件,还有现成的Form 模板直接使用,添加一个:
添加新项—选项“DevExpress RibbomForm v9.1”,OK。这么简单!!!
以下是主要代码及运行效果:
1. public frmMain()
2. {
3. InitializeComponent();
4. BarSubItem skinBar = new BarSubItem(barManager1, "Look and Feel");
5. this.mainMenuBar.AddItem(skinBar);
6.
7.
8.
9. string bonusSkinNames = ";Coffee;Liquid Sky;London Liquid Sky;Glass Oceans;Stardust;Xmas 2008 Blue;Valentine;McSkin;Summer 2008;Pumpkin;Dark Side;Springtime";
10. BarSubItem BonusSkins = new BarSubItem(barManager1, "Bonus Skins");
11. BarSubItem OfficeSkins = new BarSubItem(barManager1, "Office Skins");
12. BarSubItem Skins = new BarSubItem(barManager1, "Skins");
13. foreach (SkinContainer cnt in SkinManager.Default.Skins)
14. {
15. BarButtonItem subMenu = new BarButtonItem(barManager1, cnt.SkinName);
16. subMenu.ItemClick += new ItemClickEventHandler(subMenu_ItemClick);
17. if (cnt.SkinName.IndexOf("Office") > -1)
18. {
19. OfficeSkins.AddItem(subMenu);
20. }
21. else if (bonusSkinNames.IndexOf(string.Format(";{0}", cnt.SkinName)) > -1)
22. {
23. BonusSkins.AddItem(subMenu);
24. }
25. else
26. {
27. Skins.AddItem(subMenu);
28. }
29. }
30. string[] OtherSkins = new string[] { "Default", "Flat", "Ultra Flat", "Style3D", "Office2003" };
31. for (int i = 0; i < OtherSkins.Length; i++)
32. {
33. BarButtonItem subMenu = new BarButtonItem(barManager1, OtherSkins[i]);
34. subMenu.ItemClick += new ItemClickEventHandler(subMenu_ItemClick);
35. skinBar.AddItem(subMenu);
36. }
37. skinBar.AddItem(Skins);
38. skinBar.AddItem(OfficeSkins);
39. skinBar.AddItem(BonusSkins);
40.
41.
42.
43. }
44.
45. void subMenu_ItemClick(object sender, ItemClickEventArgs e)
46. {
47. switch (e.Item.Caption)
48. {
49. case "Style3D":
50. // DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.Style3D;
51. DevExpress.LookAndFeel.UserLookAndFeel.Default.SetStyle3D();
52. break;
53. case "Office2003":
54. // DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.Office2003;
55. DevExpress.LookAndFeel.UserLookAndFeel.Default.SetOffice2003Style();
56. break;
57. case "Ultra Flat":
58. // DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.UltraFlat;
59. DevExpress.LookAndFeel.UserLookAndFeel.Default.SetUltraFlatStyle();
60. break;
61. case "Flat":
62. // DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.Flat;
63. DevExpress.LookAndFeel.UserLookAndFeel.Default.SetFlatStyle();
64. break;
65. default:
66. // DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.Skin;
67. DevExpress.LookAndFeel.UserLookAndFeel.Default.SetDefaultStyle();
68. break;
69. }
70. DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName = e.Item.Caption;
71.
72. //
73. }
转载于:https://www.cnblogs.com/xuhaibiao/archive/2011/10/23/2221614.html
DevExpress控件之主题相关推荐
- DevExpress控件使用经验总结
DevExpress控件使用经验总结 DevExpress是一个比较有名的界面控件套件,提供了一系列的界面控件套件的DotNet界面控件.本文主要介绍我在使用DevExpress控件过程中,遇到或者发 ...
- DevExpress控件使用系列--ASPxTreeList
DevExpress控件使用系列--ASPxTreeList 控件功能 结合列表控件及树控件的优点,在列表控件中实现类型树的多层级操作 官方说明 http://documentation.devex ...
- 【原创】DevExpress控件GridControl中的布局详解
在进行DevExpress控件GridControl的使用时,因控件的灵活性,所以用户会经常进行拖动控件的列,以达到自己满意的样式, 但下次再打开时系统就会重新还原到原有的布局风格,为了能够保持用户之 ...
- 线程访问 DevExpress控件异常时 解决方法
线程访问 DevExpress控件异常时 解决方法 Control.CheckForIllegalCrossThreadCalls = false; DevExpress.Data.CurrencyD ...
- DevExpress控件GridControl中的布局详解 【转】
DevExpress控件GridControl中的布局详解 [转] 2012-10-24 13:27:28| 分类: devexpress | 标签:devexpress |举报|字号 订阅 h ...
- DevExpress控件之GridControl控件
DevExpress控件之GridControl控件 http://blog.sina.com.cn/s/blog_6769068d0100iucx.html 1. 设置数据源: string sq ...
- Devexpress控件中gridcontrol Drag a column header here to group by that column 更换
参照网站:http://documentation.devexpress.com/#WPF/DevExpressXpfGridDataViewBase_RuntimeLocalizationStrin ...
- devexpress控件的2种汉化方法,官方想得很周到
devexpress控件库默认安装后,使用的本地资源为英文.但其实它都有本地化资源包,比如按钮属性,控件属性描述,菜单项,确认和错误的信息等等,所有这些资源字符串可以很容易地被翻译成各种语言.对于要求 ...
- devexpress控件教程 开发workflow设计器这么简单
如果你的项目的OA,尤其是政府部门的OA,那么一定会涉及工作流这个功能.这个模块说大不大.说小不大,最头疼的就是它的设计器,一直没有合适的.虽然微软出了工作流的3.5和4.0版本,但也没有配套的设计器 ...
- Devexpress 控件做水晶报表小试牛刀(Master-Detail)!!!
最近由于工作需要,项目中要求做水晶报表,所以就稍微研究了下 Devexpress控件做报表的功能.由于以前博主做报表都是用的是VS自带的,所以有什么不对的还希望大家多多指教. 添加从表 1.启 ...
最新文章
- Effective C++学习笔记(Part Five:Item 26-31)
- 如何写一个通用的README规范 1
- 程序员的量化交易之路(35)--Lean之DataFeed数据槽3
- 异步SOCKET与同步SOCKET
- hadoop-2.7.2 分布式集群搭建
- 数据结构--图 Graph
- 【计算机网络】信息与信号
- 不用也要知道的几种算法(PHP版本)
- 直接上手!不容错过的 Visual Studio Code 十大扩展组件
- linux下超强命令(shell语句)组合
- 最新回归算法理解、实现及应用(1)线性回归
- 网安学习日志(5)流量分析基础
- svn和git有什么区别
- 1MB = 1024 KB还是 1MB = 1000 K
- 【论文阅读】RAPTOR: Robust and Perception-Aware Trajectory Replanning for Quadrotor Fast Flight
- 当前流行的智能硬件产品整理
- java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal
- FCK编辑器(完整详解)
- matlab:cell格式转换为double类型
- C语言课程设计:图书信息管理系统