界面控件DevExpress WPF v21.2新版亮点放送:远程桌面性能增强

DevExpress WPF近日正式发布了v21.2,新版本官方正式宣布增强了远程桌面性能、图表控件功能等,欢迎下载最新版体验!

远程桌面性能

新版本的主题缓存引擎 – 默认为所有内置和自定义WPF主题启用,现在支持多个登录/注销操作。 这个新选项增强了使用 DevExpress UI 组件开发的所有WPF应用程序的性能,对于远程执行的应用程序(使用Microsoft远程桌面服务或Citrix等工具),性能提升尤其显着,在这些应用程序中,登录/注销操作更为常见。

为了帮助可视化与此增强相关的性能相关优势,技术团队测量了正常呈现 WPF 电子表格控件以及登录/注销后需要多长时间:

界面控件DevExpress WPF v21.2新版图集
图表

可自定义的空点

DevExpress Chart控件现在可以将间隙(在数据源内)处理为空点(具有未定义值的点),现在可以使用不同的样式选项(基于系列视图类型)自定义这些间隙的外观,还可以完全自定义空点的点标记、线段和区域段的外观。

您还可以绘制“模拟”点替代间隙(基于相邻系列点的值),将系列视图的 EmptyPointOptions.ProcessPoints 属性设置为 ‘Interpolate’。

界面控件DevExpress WPF v21.2新版图集
数据 格和TreeList

MVVM Command API

WPF数据 格和TreeList控件包括以下新命令:

  • AddingNewNodeCommand
  • CustomNodeFilterCommand
  • CustomUnboundColumnDataCommand
  • CellMergeCommand
  • CellValueChangedCommand
  • CellValueChangingCommand
  • InitNewRowCommand
  • InitNewNodeCommand
  • InvalidRowExceptionCommand
  • NodeChangedCommand
  • ValidateCellCommand

这些命令属性充当标准事件的对应物,允许您在 ViewModel 级别塑造数据并响应用户输入,而无需在 View 中编写代码。

XAML

<dxg:GridControl CustomUnboundColumnDataCommand="{Binding UnboundColumnDataCommand}">

C#

[Command]public void UnboundColumnData(DevExpress.Mvvm.Xpf.UnboundColumnRowArgs args) {if(args.IsGetData) {Product item = (Product)args.Item;args.Value = item.UnitPrice * item.UnitsOnOrder;}}

锁定 TreeList 更新

您现在可以在 WPF TreeList 中完全锁定计算和树层次结构更新。

C#

public void UpdateSource() {TreeListControl.View.BeginDataUpdate(true);// Update sourceTreeListControl.View.EndDataUpdate();}

这个新的 API 将有助于提高大型数据集的性能(当/如果必须同时更新大型记录集时)。

全新的CRUD API

  • 添加行:现在可以使用 New Item Row 将新记录添加到Infinite Async Source中。
  • 在删除时验证行: 格的新 ValidateRowDeletion 事件和ValidateRowDeletionCommand事件允许在从 格中删除绑定到本地或无限源的行之前检查数据库约束。

C#

[DevExpress.Mvvm.DataAnnotations.Command]public void ValidateRowDeletion(DevExpress.Mvvm.Xpf.ValidateRowDeletionArgs args) {var item = (EFCoreIssues.Issues.User)args.Items.Single();_Context.Users.Remove(item);_Context.SaveChanges();}
  • 刷新数据:您现在可以使用 RefreshDataSource 命令或按 F5 来刷新绑定到无限、分页、服务器模式或即时反馈源的 格。 如果不想阻塞 UI,可以在单独的任务中执行刷新操作,我们还添加了RefreshDataSource事件和 RefreshDataSourceCommand 来手动刷新数据。

C#

[DevExpress.Mvvm.DataAnnotations.Command]public void Refresh(DevExpress.Mvvm.Xpf.RefreshArgs args) {args.ResultAsync = Task.Run(() => {_Context = new IssuesContext();ItemsSource = _Context.Users.ToList();});}

这些 API 与 MVVM 完全兼容。


DevExpress技术交流群6:600715373      欢迎一起进群讨论

DevExpress企业定制服务
标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年1月27日
下一篇 2022年1月27日

相关推荐

发表回复

登录后才能评论