首页 > 其他分享 >整理记录一下DevExpress中更换Form窗体皮肤的操作过程

整理记录一下DevExpress中更换Form窗体皮肤的操作过程

时间:2022-12-05 12:36:46浏览次数:40  
标签:Form DevExpress 皮肤 Skins 窗体 v8.1


俗话说得好:”好记心不如烂笔杆儿“,这不,前些时间突然心血来潮,想用C#来写写软件,其实我的计算机中老早就装上了DevExpress的开发环境了,可是一直跟自己找借口,没有动手写过一个像样的软件,我写项目喜欢把界面做得漂亮点儿,当然并没有忽略功能,如果你还在找如何更换DevExpress中form的皮肤或者是如何使用用DevExpress Form窗体皮肤的话,本文是一篇有效解决你这个问题的!下面实录我在DevExpress 8 中更改form皮肤的过程:

 

第1步:新建一个项目,vs2005会自动生成一个form1.cs的窗体,这个窗体也是程序的启动项,请注意,此时的”Form1”继承的是Windows 自带的Form,即”System.Windows.Forms”。而这个Form是不会应用DevExpress的主题样式的。那么我们怎么样才可以让Form应用这些样式呢?

第二步:新建一个继承DevExpress窗体的Form窗体,也就是你新建项时,“Form”时,选择DevExpress Form为模板,就可以应用DevExpress的漂亮主题了。此时,From继承的是“DevExpress.XtraEditors.XtraForm”。并把你新建的这个设置为启动项,系统自动生成的那个”form1“你自己排除或删除即可!

第三步:添加DevExpress 主题皮肤的引用,你看你的引用中是否有DevExpress.BonusSkins.v8.1 DevExpress.officeSkins.v8.1的引用,如果没有,请添加

第四步:在软件的入口Program类的main函数的第一行代码前加上如下代码:

DevExpress.UserSkins.BonusSkins.Register();
DevExpress.UserSkins.OfficeSkins.Register();
DevExpress.Skins.SkinManager.EnableFormSkins();
第五步:窗口放个DefaultLookAndFeel控件!其作用是设置窗体的主题样式。

第六步:软件往往有个设置皮肤的地方,这个地方往往是需要枚举出所有皮肤的,把皮肤全部枚举出来放到一个ComboBoxEdit中,代码如下:

foreach (DevExpress.Skins.SkinContainer skin in DevExpress.Skins.SkinManager.Default.Skins)
{ cmbAppStyle.Properties.Items.Add(skin.SkinName);
} 
第七步:设置其他皮肤,怎样设置皮肤呢,只需设置每个窗口的DefaultLookAndFeel即可,在ComboBoxEdit的selectChang事件中,代码如下:

this.defaultLookAndFeel1.LookAndFeel.SkinName = cmbAppStyle.EditValue.ToString();
PS:
1、注意,我这儿用的是DevExpress 8.1,在老版本中可能不支持。如果是7.x的版本,请见DevExpress demo中的源代码。 
2、什么是启动项不用解释了吧~~ 
3、当我们安装完DevExpress控件包之后,在添加新项窗口中我们会看到多出的几项:DevExpress Form v8.1、DevExpress RibbomForm v8.1和DevExpressUsercontrol v8.1,其中“v8.1”是版本号。
4、DevExpress中的默认皮肤名的取得:DevExpress.Skins.SkinManager.DefaultSkinName


标签:Form,DevExpress,皮肤,Skins,窗体,v8.1
From: https://blog.51cto.com/u_11295556/5911878

相关文章

  • DevExpress 给TreeList添加右键菜单
    只有在右击节点时才会触发privatevoidtreeList1_MouseDown(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Right)......
  • 操作Devexpress treelist中的项
    如果需要在单元格添加时则用TreeList如果只是单纯读取数据或检索数据时则用GridControl​​​​1.如果点击添加时则添加TreeList的节点:protectedinternalvoidbtnAdd_Cli......
  • DevExpress控件之
    1、OptionsSelection:EnableAppearanceForcusedCell:选中的Cell的Appearance设置是否可用。默认为True;......
  • 如何在WPF中调用Winform控件
    功能实现主要分三步:1、添加两个引用:WindowsFormsIntegration.dll(负责整合WPF和Windows)、System.Windows.Forms.2、在XAML文件中添加两个引用(粗体部分):<Wi......
  • .NET Platform Extensions是一套.Net官方的API集合
    .NETPlatformExtensions是一套.Net官方的API集合什么是Microsoft.Extensions.NETPlatformExtensions是一套.Net官方的API集合,提供了一些常用的编程模式和实用工具,例......
  • 文件上传的multipart/form-data属性,你理解了吗
    form表单经常用于前端发送请求,比如:用户填写信息、选择数据、上传文件,对于不同的场景,上传数据的格式也会有些区别。actionaction表示该请求的url地址,定义在form上,请求......
  • WinForm混合Blazor(中)
    在上一篇中介绍了一下razor文件中,js与c#之间的相互调用,但WinForm和Blazor混合中,没有真正与WinForm进行交互,本篇来说明一下。WinForm中混合Blazor是通过ServiceCol......
  • WinForm混合Blazor(下)
    有时,为了省事,我们也可以把窗体的控件注入到ServiceCollection中,在razor中订阅事件,这样就省了中间的桥梁,直接用控件当桥梁,下面以一个Button和Timer为例,来展示使用方式。......
  • WinForm混合Blazor(下)
    有时,为了省事,我们也可以把窗体的控件注入到ServiceCollection中,在razor中订阅事件,这样就省了中间的桥梁,直接用控件当桥梁,下面以一个Button和Timer为例,来展示使用方式。......
  • WinForm混合Blazor(中)
    在上一篇中介绍了一下razor文件中,js与c#之间的相互调用,但WinForm和Blazor混合中,没有真正与WinForm进行交互,本篇来说明一下。WinForm中混合Blazor是通过ServiceColle......