C# WinForm项目中自带的窗体风格很普通,一点都不美观。DotNetBar就是一套.NET美化控件库,有70几个控件以及多种界面的皮肤风格。关于控件的效果在官网上进行查看http://www.devcomponents.com/dotnetbar/。下面就来介绍一下如何使用DotNetBar来改变窗体的风格。

1.添加DoNetBar的程序集。

DevComponents.DotNetBar.Design.dll 控件在设计时可见所必要的程序集

DevComponents.DotNetBar2.dll 控件所在的程序集

2.建立一个窗体类FrmTest,并在FrmTest的代码文件中添加using DevComponents.DotNetBar;引用,并把窗体的基类Form更改成Office2007Form,如下所示:

using DevComponents.DotNetBar;
namespace wind
{public partial class FrmTest : Office2007Form{public FrmTest(){InitializeComponent();}}}

3.打开FrmTest窗体的设计面板就可以发现窗体的风格已经变成了office2007 的风格了,如下图所示。

窗体在设计时已经改变其风格了,但是在运行时,窗体的风格依然是WinForm自带的窗体效果,貌似更改窗体的继承基类不起作用,在网上找了一些资料,发现需要在窗体的构造函数的最前面加上下面这样一句代码。

public FrmTest(){this.EnableGlass = false;//关键,InitializeComponent();}

这下,窗体在运行时,也是office2007的风格。

4.到目前为止,我们已经能够更改窗体的风格了,但是现在还不能为整个项目变换风格,我们需要使用一个StyleManager来控制整个项目的风格,拖一个StyleManager控件到窗体上,这样就把窗体和风格管理控件进行关联。通过更改StyleManager控件的ManagerStyle属性就可以实现整个项目的换肤,下面做一个简单的示例来演示一下这种效果。

5.界面设计如下:

6.窗体代码如下。

string[] skinNames = { "Office2007Blue", "Office2007Silver", "Office2007Black", "Office2010Silver", "Office2013" };private void FrmTest_Load(object sender, EventArgs e){foreach (string skin in skinNames){this.cmbSkin.Items.Add(skin);}}private void buttonX1_Click(object sender, EventArgs e){switch (this.cmbSkin.Text){case "Office2007Blue":this.styleManager1.ManagerStyle = eStyle.Office2007Blue;break;case "Office2007Silver":this.styleManager1.ManagerStyle = eStyle.Office2007Silver;break ;case "Office2007Black":this.styleManager1.ManagerStyle = eStyle.Office2007Black;break;case "Office2010Silver":this.styleManager1.ManagerStyle = eStyle.Office2010Silver;break;case "Office2013":this.styleManager1.ManagerStyle = eStyle.Office2013;break;   }}

这下就实现了窗体的整体皮肤变换,不仅仅窗体的风格变了,还包括窗体上的控件也会发生改变,甚至整个项目的窗体以及上面的控件都会发生改变,下面将演示一下效果。

当然使用DotNetBar的界面没有常规界面那么稳定。
这里提示例源代码下载,下载链接:戳我

转载于:https://www.cnblogs.com/mingjiatang/p/5940826.html

DotNetBar的使用—(界面风格)相关推荐

  1. Python之seaborn:利用seaborn的color_palette()函数改变绘图界面风格

    Python之seaborn:利用seaborn的color_palette()函数改变绘图界面风格 目录 利用seaborn的color_palette()函数改变绘图界面风格 实现结果 源代码解释 ...

  2. php 超炫 页面,dedecms织梦后台模板,超炫界面风格

    dedecms织梦后台模板,超炫界面风格 互联网收集,版权归原作者所有,请勿用于商业使用,仅供学习参考.将dede和include文件夹上传到你的网站根目录进行覆盖即可.(注:如果你的后台目录修改了的 ...

  3. 关于扁平化界面风格的设计美学讨论

    这是一篇关于视觉方面的小文章,关于扁平化与拟物化风格的讨论.有不少朋友来发表各自的看法,说明这确实是大家都蛮关心的设计问题.大家的观点虽然不同,但都有一定的道理,都能看出发表论调的设计师的思考和激情. ...

  4. notepad++ 配置自己的notepad++的界面风格

    配置自己的notepad++的界面风格:工欲善其事,必先利其器 Notepad++ 文本编辑器,软件小巧高效,支持27种编程语言,通吃C,C++ ,Java ,C#, XML, HTML, PHP,J ...

  5. Eclipse界面风格调整

    Eclipse界面风格调整 通过Eclipse下安装DevStyle插件,进行风格界面的调整 安装步骤 1.打开eclipse里面的marketplace,下载各种插件的地方 点击->help- ...

  6. 让程序实现xp界面风格

    关于让自己的程序界面实现XP风格这个问题,在网上的讨论很多,大多数的作法都是写一个.manifest文件,然后将文件名改一下,比如.exe文件为test.exe,就将这个.manifest文件改名成t ...

  7. office2021 版本2203现已适配win11界面风格

    3月注定是不平凡的一个月,除了有苹果春季新品发布会的惊艳产品外,微软Microsoft在office2021测试版内适配了win11界面设计,而windows+office已经成为全世界级装机标配组合 ...

  8. xe5 TStyleManager 界面风格

     xe5  TStyleManager 界面风格 #include <System.SysUtils.hpp> #include <System.IOUtils.hpp> ...

  9. c + easyx 实现放怀旧掌机界面风格俄罗斯方块

    c + easyx 实现怀旧掌机界面风格俄罗斯方块 文章目录 c + easyx 实现怀旧掌机界面风格俄罗斯方块 前言 一.俄罗斯方块的构型 二.数据结构 三.游戏的实现逻辑 1.界面绘制 2.方块的 ...

  10. 小米android8.0新功能,小米6搭载安卓8.0终于来了 多任务界面风格大变

    ­ 早在8月份,谷歌就发布了安卓8.0正式版系统.不过由于国内的定制系统与原生安卓区别较大,所以国内机型适配安卓8.0需要时间. ­ 经过一段时间的等待,搭载安卓8.0的小米6终于来了.11月末,小米 ...

最新文章

  1. java 反射代价_Java反射机制
  2. qt向服务器传输文字_Qt 模拟 HTTP 表单提交文字或文件到服务器
  3. eclipse java代码乱码怎么解决_eclipse java 乱码怎么解决
  4. zepto和jquery的区别,zepto的不同使用8条小结
  5. OpenLayers加载搜狗地图
  6. 配置PIM auto-rp
  7. 每个程序员都可能犯过的10个错误
  8. Android之推荐看的Android源码
  9. F1 Query: Declarative Querying at Scale
  10. Linux中的内存段(BSS、数据段、代码段、堆、栈)
  11. Alibaba之MySQL宝典_Alibaba之MySQL宝典流出!极致经典,堪称行业天花板
  12. .txt文件改成.bat为什么没有反应
  13. vs可以编译python_Python如何进行编译和反编译
  14. IDA远程调试Android
  15. response对象设置返回状态_爬虫代理之设置
  16. 开发人员最常用的 10 大容器安全工具
  17. 医院招聘计算机人员面试经典问题,医院收费员常见面试题目
  18. 创新科技成果广东功能性水稻品种 国稻种芯百团计划行动
  19. winUSB设备上位机驱动开发环境的搭建
  20. excel处理几十万行数据_EXCEL的重生!处理百万行数据竟如此简单

热门文章

  1. 转:典型开源3D引擎分类比较
  2. php 提交成功后跳转,PHP提交后跳转的简单示例
  3. Avahi DOS攻击broadcast-avahi-dos
  4. 苹果内存取证工具volafox
  5. 分享Kali Linux 2017年第二周镜像文件
  6. android socket 收不到数据,android Socket服务端接收客户端数据问题
  7. c语言整形数组相加,[c语言]将两个整形升序数组合并为一个升序数组
  8. java dicom cmove_关于dcm4che DICOM Toolkit:C-Move与C-Get
  9. 基于EEG的脑机接口中的安全性问题
  10. 在网易有道做语音算法工程师是一种怎样的体验?