DevExpress WPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件的衍伸产品,还是以数据为中心的商业智能产品,都能通过DevExpress WPF控件来实现。
DevExpress WPF 2022年底更新一个重大版本——v22.2,新版重新升级了Tree List & 数据编辑器组件,欢迎获取新版体验!
DevExpress WPF v22.2官方正式版下载(Q技术交流:674691612)
Tree List
子节点的异步加载
新版本的WPF TreeList控件和DevExpress WPF数据网格(Data Grid)中的TreeListView现在可以异步加载数据了,TreeList在后台线程中获取子节点,并在获取操作进行时显示等待指示器。
异步子节点加载有助于防止不必要的屏幕“锁定”,并帮助开发者交付响应更快的WPF解决方案。
![](https://i-blog.csdnimg.cn/blog_migrate/6502b46d3b01889049ea1e6b622abe18.gif)
性能改进
技术团队改进了WPF TreeList控件的BeginDataUpdate / EndDataUpdate实现,批量修改现在比以前的版本快两倍。下面的内部测试结果有助于说明此版本的性能优势(在加载1M节点的情况下,向TreeList控件添加了1,000个项):
![](https://i-blog.csdnimg.cn/blog_migrate/f5daf0607ec196b5de3b8b15ed437c57.png)
数据编辑器(Data Editors)
全新的路径编辑器
新的路径编辑器允许开发者和最终用户轻松指定文件或文件夹的路径,用户可以在编辑框中输入路径信息,浏览文件系统来选择文件/文件夹,或者在编辑器中删除文件/文件夹。
功能包括:
可配置文件/文件夹浏览对话框(打开文件,保存文件,文件夹浏览器)
文件/文件夹路径验证
支持拖放文件/文件夹
显示系统和自定义图标
开发者可以在DevExpress容器控件中使用WPF路径编辑器,比如WPF Data Grid、WPF TreeList等。
![](https://i-blog.csdnimg.cn/blog_migrate/d27880794cd81157731d91573b3678f9.png)
按钮 - 为异步操作提供视觉反馈
DevExpress WPF按钮控件(例如,简单、下拉、分裂按钮)现在可以指示绑定的异步操作(任务)的进度,当操作正在进行时,按钮显示等待指示器,这允许开发者为数据密集型操作提供可视化反馈。
使用AsyncDisplayMode属性启用该功能,开发者可以将此属性设置为 'Wait'来 显示等待指示器或“WaitCancel”,“WaitCancel”允许用户取消给定的操作。
![](https://i-blog.csdnimg.cn/blog_migrate/9dde448fa886e21b804bf357f3fbf225.gif)
密码框 - 密码显示
WPF Password Box(密码箱)附带了一个新的密码显示按钮,用户可以点击“揭示”按钮来解开密码,长按按钮显示密码,直到释放。
![](https://i-blog.csdnimg.cn/blog_migrate/450c2fa5ba1f455b0731521bbd814feb.png)
日期导航器 - 性能改进
日期导航器现在可以比以前更快地切换视图,当用户在WPF调度器控件中导航日期时(如果绑定到多个月的日期导航器),将会注意到性能显著提升。
![](https://i-blog.csdnimg.cn/blog_migrate/66214e750e3a8e8c10a2b264e4d411f5.png)
文本编辑器的自定义掩码
新版本为所有WPF文本编辑器引入了一个新的CustomMask事件,当定义掩码类型不能满足业务需求时,处理此事件来合并自定义模式。
事件参数允许开发者获取输入文本、触发事件的用户操作(例如,插入、删除、退格等)以及操作本身的结果,还可以处理编辑器所选的文本/插入符号位置,或完全取消编辑操作。
XAML
<dxe:TextEdit MaskType="Custom" CustomMask="OnCustomMask"/>
C#
void OnCustomMask(object sender, DevExpress.Xpf.Editors.CustomMaskEventArgs e) {
// Process user input.
// This example demonstrates how to allow users to enter only Latin letters and
// capitalize entered characters.
if (e.ActionType == CustomTextMaskInputAction.Init || e.IsCanceled == true)
return;
var textInfo = CultureInfo.InvariantCulture.TextInfo;
if (!Regex.IsMatch(e.InsertedText, @"^[a-zA-Z]+$") && e.ActionType == CustomTextMaskInputAction.Insert)
e.Cancel();
else e.SetResult(textInfo.ToUpper(e.ResultEditText), e.ResultCursorPosition);
}
文本编辑器中的新的日期 - 时间掩码
新的日期 - 时间掩码帮助开发者编辑DateTimeOffset、DateOnly和TimeOnly结构,当使用这些掩码当中的一个时,文本编辑器自动将其EditValue转换为适当的类型(以便轻松地将其绑定到视图模型中的属性)。
DateOnly和TimeOnly掩码类型可以在.NET 6+应用中使用。
日期编辑 - 在代码中指定默认视图
新的SelectionView允许您在代码中指定默认视图(月、年、年或年范围)。