DevExpress WPF Subscription (产品编号:12346)

高效MVVM开发模式,WPF界面解决方案首选工具,帮助企业实现酷炫动效界面。

标签:DevExpress.NETUI界面WPF工业4.0

开发商: DevExpress

当前版本: v21.1

产品类型:控件

产品功能:UI界面

平台语言:.NET

开源水平:不提供源码

本产品的分类与介绍仅供参考,具体以商家网站介绍为准,如有疑问请来电 023-68661681 咨询。

DevExpress WPF v21.1 正式版日前已发布,DevExpress图像库现在可用于 .NET Core 和 .NET 5、升级MVVM功能等,欢迎点击下载最新版体验!

.NET Core & .NET 5
XAML 设计器 - 建议操作

建议操作现在在Visual Studio Preview 版本中可用,并包括以下新功能:

  • 支持非可视元素(工具栏和功能区项目、数据网格列)
  • 支持嵌套元素(例如,GridControl 现在可以使用 TableView 选项)
  • 新属性编辑器
  • 外观标签
界面控件DevExpress WinForms v21.1最新版亮点放送
XAML 设计器 – 图像库

DevExpress图像库现在可用于 .NET Core 和 .NET 5,图像库包括数千个高质量的光栅和矢量图标 (SVG)。 可以通过Suggested Actions、Properties窗口和Visual Studio 的主菜单访问该库。

界面控件DevExpress WinForms v21.1最新版亮点放送
MVVM
编译时 ViewModel 生成

此功能使用 .NET 5 中引入的 C# 源代码生成器在编译时为您的 ViewModel 生成样板代码。 命令声明、属性更改通知、IDataErrorInfo 实现和服务支持将自动添加链接到ViewModel 的分部类。

C#


// manual part
using DevExpress.Mvvm.CodeGenerators;

[GenerateViewModel]
public partial class ViewModel {
[GenerateProperty]
int _Count;

[GenerateCommand]
public void Increment() => Count++;
}

// generated part
partial class ViewModel : INotifyPropertyChanged {
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(PropertyChangedEventArgs e) => PropertyChanged?.Invoke(this, e);
public int Count {
get => _Count;
set {
if(EqualityComparer<int>.Default.Equals(_Count, value)) return;
_Count = value;
RaisePropertyChanged(CountChangedEventArgs);
}
}
DelegateCommand incrementCommand;
public DelegateCommand IncrementCommand {
get => incrementCommand ??= new DelegateCommand(Increment, null, true);
}
static PropertyChangedEventArgs CountChangedEventArgs = new PropertyChangedEventArgs(nameof(Count));
}


编译时代码生成共享与运行时生成的 POCO ViewModel 和标准 ViewModelBase 后代相关的好处:

  • ViewModel 没有重复的样板代码
  • 生成的代码存储在部分类中,您可以轻松查看和调试代码
  • ViewModel 类在设计时和运行时是相同的
  • 最佳运行时性能,因为类是提前生成的
EventToCommand - 事件参数返回转换

将事件参数传递给命令时,您可以定义反向转换逻辑并将值从命令返回到事件:

XAML


<dxe:TextEdit>
<dxmvvm:Interaction.Behaviors>
<dxmvvm:EventToCommand EventName="Validate"
Command="{Binding ValidateCommand}"
EventArgsConverter={local:ValidateEventArgsConverter} />
</dxmvvm:Interaction.Behaviors>
</dxe:TextEdit>


C#


public class ValidateEventArgsConverter : EventArgsConverterBase<ValidationEventArgs> {
protected override void ConvertBack(object sender, ValidationEventArgs args, object parameter) {
if (parameter is ValidationInfo info && info.IsValid)
args.SetError(info.ErrorContent, info.ErrorType);
}
...
}


当事件需要返回值并且特定于 UI 的事件参数无法传递给 ViewModel 时,这应该会简化这种情况。 此类事件的示例包括验证、自定义排序、自定义显示文本等。


DevExpress技术交流群3:700924826      欢迎一起进群讨论

2021中国区首发 · DevExpress v21.1新版发布会报名开启,名额有限先到先得哦~

慧都高端UI界面开发

查看DevExpress WPF Subscription 更新新闻


更新时间:2021-07-21 17:43:07.000 | 录入时间:2009-12-28 13:23:50.000 | 责任编辑:龚雪

相关产品
DevExpress Universal Subscription

行业领先的界面控件开发包,帮助企业构建卓越应用!

Xtreme Suite Pro

为Windows开发人员提供的用于ActiveX COM的用户界面套包。

DevExpress DXperience Subscription

高性价比的企业级.NET用户界面套包,助力企业创建卓越应用!

DevExpress WinForms Subscription

为Windows Forms平台创建具有影响力的业务解决方案,高性价比WinForms界面控件套包。

TMS Plugin Framework

使开发具有插件程序的应用程序变得简单

在线咨询
联系我们
TOP
在线客服系统
live chat