界面控件DevExpress WinForm中文教程 - 如何应用Windows 11 UI?

news2024/11/17 4:32:31

DevExpress WinForm拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForm能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

DevExpress WinForm组件允许开发人员轻松地引入受Windows 11启发的UI元素。

获取DevExpress v22.2正式版下载(Q技术交流:674691612)

WXI皮肤

基于矢量的DevExpress WXI皮肤为DevExpress的WinForms应用程序复制了Windows 11的关键视觉元素,与其他基于矢量的DevExpress皮肤一样,WXI利用了软调色板、微妙对比和较大控件尺寸的可用性优势,同时WXI还增加了控件之间的填充来提高可读性。

WXI Skin - 紧凑模式

DevExpress WXI皮肤允许开发者在运行时选择“WXI”或“WXI Compact”选项,WXI皮肤的紧凑模式是为数据编辑器密集型应用程序而设计的。如果需要最大化表单空间的使用,则应用WXI Compact选项(在Compact模式下,WXI皮肤会减少控件之间的空白)。

使用下面的代码在运行时指定WXI呈现选项(标准vs紧凑):

C#

// Apply the WXI skin with its default palette.
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinStyle.WXI);
// Or
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinStyle.WXICompact);

// Apply the WXI skin and its "Sharpness" palette.
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinSvgPalette.WXI.Sharpness);
// Or
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinSvgPalette.WXICompact.Sharpness);

VB.NET

' Apply the WXI skin with its default palette.
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinStyle.WXI)
' Or
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinStyle.WXICompact)

' Apply the WXI skin and its "Sharpness" palette.
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinSvgPalette.WXI.Sharpness)
' Or
DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinSvgPalette.WXICompact.Sharpness)

全局紧凑模式设置

切换到/从紧凑模式触发相同的UI修改应用全局WindowsFormsSettings.CompactUIMode属性,因此只有当此属性设置为DefaultBoolean.Default时,皮肤选择器才会显示两种皮肤变化。如果设置为不同的值,用户只能在运行时选择一个“WXI”选项(基于CompactUIMode属性)。

C#

// The global Compact Mode is off; the "WXI" runtime option applies the regular WXI variation.
WindowsFormsSettings.CompactUIMode = DevExpress.Utils.DefaultBoolean.False;

// The global Compact Mode is on; the "WXI" runtime option applies the compact WXI variation.
WindowsFormsSettings.CompactUIMode = DevExpress.Utils.DefaultBoolean.True;

VB.NET

// The global Compact Mode is off; the "WXI" runtime option applies the regular WXI variation.
WindowsFormsSettings.CompactUIMode = DevExpress.Utils.DefaultBoolean.False;

// The global Compact Mode is on; the "WXI" runtime option applies the compact WXI variation.
WindowsFormsSettings.CompactUIMode = DevExpress.Utils.DefaultBoolean.True;

如何获取当前模式

读取UserLookAndFeel.Default.CompactUIModeForced属性值,来确定常规皮肤选项还是紧凑型皮肤选项当前是激活的。

C#

bool isCompact = UserLookAndFeel.Default.CompactUIModeForced;

VB.NET

Dim isCompact As Boolean = UserLookAndFeel.Default.CompactUIModeForced
Window角

WXI皮肤将圆角应用于Windows 11中显示的窗体,如果您更喜欢矩形角,或者如果您想将圆角应用到其他DevExpress皮肤,请使用WindowsFormsSettings.AllowRoundedWindowCorners属性。

Ribbon

WXI皮肤自动圆角Ribbon控件的项目面板,如果某个特定的UI控件不支持受Windows 11启发的圆角,那么圆角可能会导致视觉上的不一致。如果一个带有“矩形”角的UI控件被放置在功能区的正下方,这种不一致性就会很明显。

根据您的表单布局,可以选择以下选项当中的一个来解决这种不一致:

使用经典的Ribbon样式

将RibbonControl.ItemPanelStyle属性更改为Classic,要更改项目/应用程序中的所有的Ribbon控件,请更改WindowsFormsSettings.RibbonItemPanelStyle属性为Classic。在此模式下,Ribbon使用标准矩形形状呈现,与所有其他控件的矩形形状匹配。

添加圆角面板

使用DevExpress.XtraEditors.RoundedSkinPanel封装客户端区域控件(圆形皮肤面板封装客户端控件的外角,并在Ribbon下面添加间距)。

DevExpress圆形皮肤面板正在积极开发中,在Visual Studio工具箱中不可用。要使用此面板,必须在代码中创建它。

C#

this.rootPanel = new DevExpress.XtraEditors.RoundedSkinPanel();
// ...
this.rootPanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.Controls.Add(this.gridControl1);
// ...
this.Controls.Add(this.rootPanel);
// ...
private DevExpress.XtraEditors.RoundedSkinPanel rootPanel;

VB.NET

Me.rootPanel = New DevExpress.XtraEditors.RoundedSkinPanel()
' ...
Me.rootPanel.Dock = System.Windows.Forms.DockStyle.Fill
Me.Controls.Add(Me.gridControl1)
' ...
Me.Controls.Add(Me.rootPanel)
' ...
private DevExpress.XtraEditors.RoundedSkinPanel rootPanel

重要提示:不要为每个窗体添加超过一个圆形皮肤面板。

注意:某些DevExpress WinForms控件(如MapControl),即使放置在圆形皮肤面板内,也不会不显示圆角。

使用布局控件

如果您的应用程序和/或应用程序设计包含大量的数据编辑器或简单的UI控件,请使用DevExpress Layout/Data Layout控件在表单中排列数据编辑器/简单控件。DevExpress WXI皮肤中使用的默认布局/数据布局控件填充确保子控件与Ribbon项目面板的两侧对齐。

Dock面板

要将Dock面板与Ribbon项目面板的边缘对齐,您可以将Dock UI移动到一个单独的用户控件中,并且:1)设置单独的UserControl填充或2)将UserControl放置在圆形皮肤面板内(圆形皮肤面板自动添加必要的边距)。

您也可以使用DockManager的“Light”样式(参见DockManager.Style属性来获取更多信息)来删除不需要的边界并增强界面内的对齐。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/192635.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

全网最详细的org.springframework.jdbc.UncategorizedSQLException的多种解决方法

文章目录1. 引出问题2. 分析问题3. 解决问题4. 解决该问题的其他方法4.1 方法14.2 方法24.3 方法34.4 方法4如果你遇到的问题不是我所遇到的问题,可以使用最下面的方法解决你遇到的这个错误。 1. 引出问题 今天在写“Mybatis-Plus中分页插件PaginationInterceptor…

利用Python读取外部数据文件

名字:阿玥的小东东 学习:python、c 主页:阿玥的小东东 目录 一、读取文本文件的数据 二、读取电子表格文件 三、读取统计软件生成的数据文件 不论是数据分析,数据可视化,还是数据挖掘,一切的一切全都是以…

java常用类: Arrays类的常用方法

java常用类型: Ineteger等包装类 String类,StringBuffer类和StringBuilder类 Math类及常用方法 System类及常用方法 Arrays类及常用方法 BigInteger类和BigDecimal类及常用方法 日期类Date类,Calender类和LocalDateTime类 文章目录ArraysArrays常用方法Arrays.sort(…

全排列问题的解题思路

假设有这么个正整数n,要求输出1到n的所有排列?   输入:3 输出:123,132,213,231,312,321 一、无脑循环求解? 拿到这个问题,当然我的第一个想法就…

上下文驱动的图上文案生成

✍🏻 本文作者:持信、弈臻、悟放、积流、孟诸1. 摘要为商品图片上特定位置配上装饰性文案来突出重点在广告业务中有着十分广泛的应用前景。然而,现有的图片文案描述生成系统均生成与图片位置关系无关的文案,无法很好地应用到广告业…

66. Python 类的总结

66. 类的总结 文章目录66. 类的总结1. 类2. 对象3. 类的语法4. 属性5. 方法6. 创建对象7. 调用属性8. 调用方法9. 方法的值的传递第1情况:没有值第2种情况:有值10. __init__方法1. __init__写法2. __init__作用3. 重点关注11. 自定义函数和方法的异同1. …

Unity渲染管线(Render Pipeline)笔记

Rendering是什么 渲染Rendering可以理解为将拿到的3D数据生成一副2D图像的过程。 这些3D数据包含:3D模型本身的点的信息,三角形面的描述信息,模型应用的材质以及摆放的虚拟相机的信息等。Rendering过程会使用全部的数据(物体的几何…

摄像头录像大师推荐?如何录制摄像头,图文教程

现如今,很多笔记本电脑上都会携带摄像头,用来录制摄像头画面,方便小伙伴的时候。可很多小伙伴却表示,自己不知道电脑摄像头画面该如何录制。有什么有什么好用的摄像头录制大师?如何录制摄像头画面?本篇文章…

【10w字】超详细【百分百拿offer】的面试教程,接口测试篇

1.请问你是如何做接口测试的? 大体来说,经历以下过程:接口需求调研、接口测试工具选择、接口测试用例编写、接口测试执行、接口测试回归、接口测试自动化持续集成。 具体来说,接口测试流程分成以下九步: 第一步&…

RabbitMq之发布确认(高级)

一.发送消息到交换机失败 正常情况下生产者只发布消息到交换机,无法确定是否成功把消息发送到交换机当中,由此发布确认的回调函数可以通知生产者消息是否发送到了交换机。 代码如下 1.先创建交换机、队列等信息 package jot.jothot.testMq;import or…

OS 学习笔记(6) 操作系统引导

OS 学习笔记(6) 操作系统引导 这篇笔记对应的王道OS 1.5 操作系统引导,同时参考了 《Operating System Concepts, Ninth Edition》和 俗称ostep的《 Operating Systems: Three Easy Pieces》还有 《Operating Systems: Principles and Practice》 文章目录OS 学习笔…

实战还原--从大黄蜂样本到域控管理员技术解析

0 前言实战案例还原《BumbleBee Roasts Its Way To Domain Admin》一文详细的描述了一次渗透案例,但其文章组织架构建立在ATT&CK框架上,而不是按照时间线逻辑来组织,因此对于渗透人员了解学习其前后过程有些困难,特此梳理一番…

发布微信小程序获取收集用户信息权限

前言在发布微信小程序的时候我们经常会遇到审核不通过的情况,其中一种特别让我头疼就是说小程序收集、使用和储存用户信息。不给予通过。但是他们的接口又不能提供这个功能,并且老是改动,真的特别的麻烦加无语。有时候审核偷一下懒&#xff0…

算法刷题-回文数、找出小于平均值的数、旋转图像(C_C++)

文章目录回文数找出小于平均值的数旋转图像回文数 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的…

光电耦合器和MOSFET之间的差异

光电耦合器和MOSFET之间的差异 介绍 光电耦合器/光耦合器和固态继电器(光电MOSFET或光耦MOSFET(OCMOS FET))在保持电隔离的同时传输信号,但存在一些重要差异。 结构差异 下图显示了光电耦合器和OCMOS FET的主要内部…

Vue实战第2章:简单的分配页面布局

缓冲 前言 本篇在讲什么 本篇作为Vue实战的第二章,跟代码逻辑无关,主要是简单的先设计一下个人网站的各个模块内容,明确一下我们想要将网站做出什么样子 本篇的特色 具有全流程的图文教学 重实践,轻理论,快速上…

趣味三角——第6章——两个几何定理

第6章 两个几何定理 It is the glory of geometry that from so few principles, fetched from without, it is able to accomplish so much. (几何学的荣耀在于,仅从几个原理出发,外求于无物,但却能够完成如此非凡的壮举。) ——Isaac N…

linux基本功系列-top命令实战

文章目录一. top命令介绍二. 语法格式及常用选项三. 参考案例3.1 显示进程信息3.2 显示完整的进程命令3.3 以批处理的形式展示3.4 设置信息更新频次3.5 显示指定进程号的信息3.6 top面板中常用参数3.7 其他用法四. top的相关说明4.1 交互命令介绍4.2 top面板每行信息的含义4.2.…

MySQL(八):事务的隔离级别、MVCC的原理

目录一、事务的隔离级别1.1 事务的隔离性1.2 事务并发执行引发的一致性问题1.2.1 脏写1.2.2 脏读1.2.3 不可重复读1.2.4 幻读1.3 SQL标准中的四种隔离级别1.4 MySQL中支持的4中隔离级别二、MVCC原理2.1 版本链2.2 ReadView2.3 READ COMMITED 每次读取数据前都生成一个ReadView2…

使用独立显卡安装黑苹果,但无法扩展显示器的解决方案

使用独立显卡安装黑苹果,但无法扩展显示器的解决方案 网上的教程 本文的外部链接🔗 引用文中的一句话:“这也许是无法驱动独显的黑苹果笔记本想要外接显示器的唯一方案。” ---- 购买拥有displaylink的外置显卡的usb转接器 文章作者给我了…