我在我的 WPF 项目中使用 CommunityToolkit.Mvvm。
像往常一样,我仅声明我的私有支持字段,并在其上添加
[ObservableProperty]
属性。我希望有一些生成的属性是“必需的”,以便在创建类的实例时,必须设置这些属性。有没有办法从 CommunityToolkit.Mvvm 中的源代码生成器实现此行为?
在撰写本文时,它尚未发布,但对部分属性的 [ObservableProperty] 支持即将推出。这意味着,您将能够使用具有所需部分属性的生成器,而不是声明支持字段,如下所示:
public partial class Foo : ObservableObject
{
[ObservableProperty]
public required partial string Bar { get; set; }
}
请注意,部分属性 随 C# 13 一起提供 。另请注意,如果您尝试分叉(或只是构建)包以使用生成器的最新实现,它仍然有(至少)一个 bug 会阻止您。