原文出处:http://blog.csdn.net/wservices/archive/2009/07/10/4336500.aspx

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”文件在添加如下代码:

DevExpress.UserSkins.OfficeSkins.Register();
DevExpress.UserSkins.BonusSkins.Register();
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
if (!DevExpress.Skins.SkinManager.AllowFormSkins)
DevExpress.Skins.SkinManager.EnableFormSkins();
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

  1. 如何快速的更换漂亮的主题

通过“foreach(SkinContainer cnt in SkinManager.Default.Skins){}”可以获取现有所有遥主题名称,可以把获取的主题添另到菜单上,让用户选择自己喜爱的主题样式。

通过对“DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName”设置主题名称,就可以轻松的更换主题,是不是很方便?!

下面就写一个例子,展示一下它们漂亮的“皮肤”吧!


 

  1. 3.      添加类似于Office2007的窗口

Microsoft Office 2007窗口的操作面板非常漂亮,值得让人欣喜的是DevExpress里不仅有“RibbonControl”这样的控件,还有现成的Form 模板直接使用,添加一个:

添加新项—选项“DevExpress RibbomForm v9.1”,OK。这么简单!!!

以下是主要代码及运行效果:

public frmMain()
{
InitializeComponent();
BarSubItem skinBar = new BarSubItem(barManager1, "Look and Feel");
this.mainMenuBar.AddItem(skinBar);

string bonusSkinNames = ";Coffee;Liquid Sky;London Liquid Sky;Glass Oceans;Stardust;Xmas 2008 Blue;Valentine;McSkin;Summer 2008;Pumpkin;Dark Side;Springtime";
BarSubItem BonusSkins = new BarSubItem(barManager1, "Bonus Skins");
BarSubItem OfficeSkins = new BarSubItem(barManager1, "Office Skins");
BarSubItem Skins = new BarSubItem(barManager1, "Skins");
foreach (SkinContainer cnt in SkinManager.Default.Skins)
{
BarButtonItem subMenu = new BarButtonItem(barManager1, cnt.SkinName);
subMenu.ItemClick += new ItemClickEventHandler(subMenu_ItemClick);
if (cnt.SkinName.IndexOf("Office") > -1)
{
OfficeSkins.AddItem(subMenu);
}
else if (bonusSkinNames.IndexOf(string.Format(";{0}", cnt.SkinName)) > -1)
{
BonusSkins.AddItem(subMenu);
}
else
{
Skins.AddItem(subMenu);
}
}
string[] OtherSkins = new string[] { "Default", "Flat", "Ultra Flat", "Style3D", "Office2003" };
for (int i = 0; i < OtherSkins.Length; i++)
{
BarButtonItem subMenu = new BarButtonItem(barManager1, OtherSkins[i]);
subMenu.ItemClick += new ItemClickEventHandler(subMenu_ItemClick);
skinBar.AddItem(subMenu);
}
skinBar.AddItem(Skins);
skinBar.AddItem(OfficeSkins);
skinBar.AddItem(BonusSkins);

}

void subMenu_ItemClick(object sender, ItemClickEventArgs e)
{
switch (e.Item.Caption)
{
case "Style3D":
// DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.Style3D;
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetStyle3D();
break;
case "Office2003":
// DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.Office2003;
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetOffice2003Style();
break;
case "Ultra Flat":
// DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.UltraFlat;
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetUltraFlatStyle();
break;
case "Flat":
// DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.Flat;
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetFlatStyle();
break;
default:
// DevExpress.LookAndFeel.UserLookAndFeel.Default.Style = LookAndFeelStyle.Skin;
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetDefaultStyle();
break;
}
DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName = e.Item.Caption;

//
}

转载于:https://www.cnblogs.com/wk23415/archive/2011/04/29/2033099.html

[ZZ]DevExpress Windows Form(1) DevExpress控件之主题相关推荐

  1. dev treeview控件_在Winform开发框架中使用DevExpress的TreeList和TreeListLookupEdit控件

    DevExpress提供的树形列表控件TreeList和树形下拉列表控件TreeListLookupEdit都是非常强大的一个控件,它和我们传统Winform的TreeView控件使用上有所不同,我一 ...

  2. DevExpress的下拉框控件ComboxBoxEdit怎样绑定键值对选项

    场景 DevExpress的下拉框控件ComboBoxEdit控件的使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1028 ...

  3. DevExpress的下拉框控件ComboBoxEdit控件的使用

    场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...

  4. 11. Windows应用程序常用控件

    Windows应用程序常用控件 1 控件概述 1.1 控件的分类及作用 1.2 控件的命名规范 1.2 控件的相关操作 2.1 添加控件 2.2 对齐控件 2.3 锁定控件 2.4 删除控件 3 文本 ...

  5. Windows 8.1 新增控件之 DatePicker

    Windows 8.1 新增控件之 DatePicker 原文:Windows 8.1 新增控件之 DatePicker 大年初一来介绍一个简单易用的DatePicker 控件,这个控件是新增的?印象 ...

  6. Windows 8.1 新增控件之 Hyperlink

    Windows 8.1 新增控件之 Hyperlink 原文:Windows 8.1 新增控件之 Hyperlink Hyperlink 控件应该不用过多介绍大家肯定十分清楚其作用,它的功能就像HTM ...

  7. Windows phone7 动态添加控件

    Windows phone7 动态添加控件 2011-03-29 3:48 using System; using System; using System.Collections.Generic; ...

  8. Windows Phone 7 button控件

    System.Windows.Controls.Button   button控件 一.button控件的各种样式的展示 可以通过 <phone:PhoneApplicationPage.Res ...

  9. Form表单控件与浮动

    Form表单控件 第一点: 文本域 textarea 语法 属性 name:控件的名字 cols:指定文本域的列数,变相设置宽度 rows:指定文本域的行数,变相设置高度 readonly:只读 pl ...

  10. DevExpress v15.1:WPF控件升级(四)

    2019独角兽企业重金招聘Python工程师标准>>> <下载最新版DevExpress WPF Controls v15.1.5> WPF编辑器 在Token编辑器中的 ...

最新文章

  1. 2021年大数据HBase(二):HBase集群安装操作
  2. Apache Kafka之设计
  3. python3 异步 非阻塞 IO多路复用 select poll epoll 使用
  4. centos6 配置ip、服务
  5. Java:ThreadPoolExecutor解析
  6. [wordpress]更新插件时,免去FTP操作
  7. Tcl与Design Compiler (八)——DC的逻辑综合与优化
  8. Linux下LAMP服务配置
  9. 1. C++基础知识学习及其深入理解(面向对象部分还没学) -- 课程1完成
  10. 正则表达式 - C语言
  11. 波利亚《怎样解题》感悟
  12. 别浪费生活中灵光一闪的创意,发到实现网试试,万一实现了呢?
  13. matlab怎么fprintf,matlab中的fprintf函数怎么用
  14. 国外不良资产证券化经验总结
  15. php Excel 合并单元格
  16. 02.配置免费图床Gitee/Github
  17. 构建基于MX1919的超声波阵列驱动板
  18. 考虑结构预应力的坎贝尔图分析
  19. 2021-09-23记录下wifi调试流程
  20. 美剧推荐:abc新剧Traveler

热门文章

  1. php连接mysql实例留言板_一个php留言板实例详解(附源码下载)
  2. python 调用海康sdk_Qt调用海康SDK实现摄像头视频播放
  3. 几款常用的Git图形化工具
  4. Nsight Visual Studio 调试
  5. 卸载不了mysql2008_你还在为无法完美卸载SQL Server 2008 R2而烦恼吗?
  6. linux用dd命令刻录u盘,巧用linux dd命令刻录启动U盘
  7. 更改 VSCode 字体
  8. CRC校验码计算公式
  9. 条码打印软件如何在二维码中间添加logo图片
  10. CentOS7.5中Moodle 3.7之PHP Cli(命令行)方式安装