gpt4 book ai didi

c# - 如何报告实体对象的自定义(添加)计算属性已更改?

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

首先,我为我的低水平英语写作道歉。

我在 WPF MVVM 项目中使用 Entity Framework 和数据绑定(bind)。
我想知道将数据绑定(bind)到使用 Entity Framework 生成的 EntityObject 的添加计算属性的最佳方法是什么。

例如:

partial class Person
{
partial string Name...

partial string Surname...

public string FullName
{
get { return Name + Surname; }
}
}

然后在 XAML 中类似于 ...Text="{Binding FullName, Mode=Twoway}"

此时我的 GUI 不知道属性 FullName 何时更改......我该如何通知它?
我已经尝试过 ReportPropertyChanged 但它返回的是一个错误......

另外,我想知道当一个绑定(bind)依赖于更多属性时实现绑定(bind)的最佳方法是什么......计算的属性或值转换器或不同的东西?

最佳答案

您可以在构造函数中订阅 PropertyChanged 事件,如果属性名称与两个源属性中的任何一个匹配,则引发计算的事件。

public Person()
{
this.PropertyChanged += (o, e) =>
{
if (e.PropertyName == "Name" || e.PropertyName == "Surname") OnPropertyChanged("FullName");
};
}

关于c# - 如何报告实体对象的自定义(添加)计算属性已更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3609890/

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