当前位置: 首页 > web >正文

界面控件DevExpress WinForms v25.1新功能预览 - 功能区组件全新升级

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

DevExpress下一个主要更新(v25.1)将在几个月后发布,正如我们之前提到的那样,新的桌面开发标准(. NET Core、AI、可访问性)仍然是重点关注的领域。在本文中,我们为大家介绍了.DevExpress WinForms在功能区组件方面的升级,欢迎下载最新版控件体验!

获取DevExpress WinForms 正式版下载

WinForms Ribbon和Bars
最大化/最小化Ribbon

新的API包括:

  • MaximizeRibbon(RibbonPage):展开最小化的Ribbon。
  • RibbonControl.AllowMinimizeRibbonOnDoubleClick:指定用户是否可以通过双击页面标题来最小化功能区。
识别Bar项和Bar链接

新的API包括:

  • BarManager.GetItemAt(Point):标识指定屏幕坐标处的栏项。
  • Barmanager.GetLinkAt(Point):在指定的屏幕坐标上标识BarItemLink。
barManager1.ItemClick += (sender, e) => {
BarItem item = barManager1.GetItemAt(Cursor.Position);
// BarItemLink itemLink = barManager1.GetLinkAt(Cursor.Position);
Debug.WriteLine(item.Caption);
};
处理栏项目右键单击

DevExpress WinForms Bar Manager(栏管理器)和Ribbon控件将支持对栏项进行右键操作,新事件包括:

  • RibbonControl.ItemRightClick
  • BarManager.ItemRightClick
  • BarItem.ItemRightClick

v25.1还将引入了一个新的e.MouseButtton事件参数,它允许您识别按下的鼠标按钮。

基于助记符的子菜单导航

在v25.1中,官方增强了传统的基于工具栏的用户界面键盘可访问性。用户可以使用相同的助记符循环遍历子菜单项(在标题中用&表示),当子菜单中的多个项目具有相同的助记符时,重复的按键按顺序浏览它们。该特性是自动启用的,不需要额外的配置。

DevExpress WinForms v25.1新功能图集

barItemSaveAs.Caption = "Save &As";
barItemSaveAll.Caption = "Save &All";
BarItem - 支持AutomationId

AutomationId属性 - 在自动化测试和可访问性(a11y) 工具中区分UI元素的唯一标识符——现在可用于BarItem对象,此属性自动设置为栏项的名称。

BarToggleSwitchItem - 切换开关宽度

在v25.1中,您可以指定切换开关栏的宽度,使用EditorToThumbWidthRatio属性设置项目的总宽度相对于拇指的宽度。

DevExpress WinForms v25.1新功能图集

WinForms Accordion(折叠)控件
徽章和提示

官方将DevExpress WinForms Accordion控件与装饰器UI管理器集成在一起,来帮助显示徽章/提示并突出显示特定的Accordion UI元素。

DevExpress WinForms v25.1新功能图集

using System.Drawing;
using DevExpress.Utils.VisualEffects;
// ...
Badge badgeInbox;
public Form1() {
InitializeComponent();
badgeInbox = new Badge();
// Assign the badge to the 'Inbox' accordion item
badgeInbox.TargetElement = accordionItemInbox;
// Specify badge text
badgeInbox.Properties.Text = "17";
// Specify badge location and offset
badgeInbox.Properties.Location = ContentAlignment.TopLeft;
badgeInbox.Properties.Offset = new Point(85, 6);
// Customize badge appearance
badgeInbox.Appearance.BackColor = Color.Gray;
badgeInbox.Appearance.BorderColor = Color.Gray;
badgeInbox.Appearance.ForeColor = Color.White;
badgeInbox.Appearance.Font = new Font("Tahoma", 8.25F, FontStyle.Bold);// Add the badge to the AdornerUIManager
adornerUIManager1.Elements.Add(badgeInbox);
}
快捷键

Accordion(折叠)现在支持键盘快捷键,使用ShortcutKey属性指定预定义或自定义键盘快捷方式。这种增强提高了可访问性,特别是对于具有复杂导航结构的应用程序。

XtraMessageBox功能增强

V25.1引入了新的功能,旨在:

  • 在Windows任务栏中显示DevExpress消息框,确保用户可以轻松访问。
  • 定义消息框在屏幕上的起始位置。
void messageButton_Click(object sender, EventArgs e) {
XtraMessageBoxArgs args = new XtraMessageBoxArgs() {
Caption = "Tip",
Text = "Hello DevExpress!",
Buttons = new DialogResult[] { DialogResult.OK },
};
args.ImageOptions.SvgImage = svgImageCollection1["info"];
args.ImageOptions.SvgImageSize = new Size(32, 32);
args.Showing += Args_Showing;
XtraMessageBox.Show(args);
}
void Args_Showing(object sender, XtraMessageShowingArgs e) {
// Get the screen working area
Rectangle workingArea = Screen.PrimaryScreen.WorkingArea;// Calculate bottom-right position
int x = workingArea.Right - e.MessageBoxForm.Width;
int y = workingArea.Bottom - e.MessageBoxForm.Height;// Define message box start position
e.MessageBoxForm.StartPosition = FormStartPosition.Manual;
e.MessageBoxForm.Location = new Point(x, y);// Display the message box in the Windows taskbar
e.MessageBoxForm.ShowInTaskbar = true;
}

http://www.xdnf.cn/news/4990.html

相关文章:

  • jQuery 事件
  • 2025数维杯数学建模竞赛B题完整参考论文(共38页)(含模型、代码、数据)
  • Jsp技术入门指南【十一】SQL标签库
  • springboot ResetController RequestMapping 注解
  • 《挖掘全球商标宝藏,开启亚马逊运营新征程》
  • Docker宿主机IP获取
  • -bash: /usr/local/mysql/bin/mysqld: No such file or directory
  • 灵活设置CAN终端电阻
  • UG471 之 SelectIO 逻辑资源
  • MongoDB知识框架
  • 数智读书笔记系列032《统一星型模型--一种敏捷灵活的数据仓库和分析设计方法》
  • 编译日志:关于编译opencv带有ffmpeg视频解码支持的若干办法
  • 为啥大模型一般将kv进行缓存,而q不需要
  • 权限控制模型全解析:RBAC、ACL、ABAC 与现代混合方案
  • python调用千问大模型
  • 我国脑机接口市场规模将破38亿元,医疗领域成关键突破口
  • QT 解决msvc fatal error C1060: 编译器的堆空间不足
  • 移动IP与手机移动数据流量的概念、原理、区别与联系
  • DVWA靶场保姆级通关教程--06不安全验证机制
  • 二维差分数组(JAVA)蓝桥杯
  • k8s之ingress
  • 使用 docker 安装 nacos3.x
  • upload-labs靶场通关详解:第三关
  • 【漫话机器学习系列】249.Word2Vec自然语言训练模型
  • 十二、基于大模型的在线搜索平台——信息抓取
  • 智能网联汽车 “中央计算” 博弈:RTOS 与跨域融合的算力分配挑战
  • 网络研讨会开发注册中, 5月15日特励达力科,“了解以太网”
  • stm32之USART
  • Day 15 训练
  • OpenHarmony平台驱动开发(十一),PIN