gpt4 book ai didi

c# - 在对象的 ObservableCollection 上实现 INotifyDataErrorInfo

转载 作者:行者123 更新时间:2023-12-03 10:43:22 25 4
gpt4 key购买 nike

上下文

我正在使用 MVVM 和 Entity Framework (数据库优先)开发 WPF 应用程序。我有一个机身对象的 ObservableCollection(通过 CollectionView 查看,以便我可以处理下一个/上一个逻辑)。我有一个文本框,允许编辑当前查看的机身的机身属性之一,我目前正在为此设置验证。我采用的方法是使用 WPF 4.5: Validating Data in Using the INotifyDataErrorInfo Interface 中显示的示例来实现 INotifyDataErrorInfo。 .

问题

在该文章的示例中,验证是通过 ViewModel 中定义的单个属性的 setter 触发的,如下所示:

private string _username;
public string Username
{
get { return _username; }
set
{
_username = value;
ValidateUsername(_username);
}
}

问题

如何在我的特定上下文中触发验证?当我使用 Entity Framework (数据库优先)时,我无法在生成的机身模型中摆弄 setter 。我看不到如何获得细粒度的访问权限来更改机身对象的 ObservableCollection 中的 setter 。我也想不出任何其他可以触发验证的地方。

最佳答案

您可以使用 INPC 支持您生成的机身模型

https://github.com/Fody/PropertyChanged

using PropertyChanged;

[ImplementPropertyChanged]
public partial class AirFrame
{
}

然后监听引发的事件 INotifyPropertyChanged 并将其用作强制验证的触发器。

关于c# - 在对象的 ObservableCollection 上实现 INotifyDataErrorInfo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41386654/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com