gpt4 book ai didi

c# - 是否可以触发 OnPropertyChanged 事件而不在 ViewModel 的属性 setter 中显式调用它?

转载 作者:行者123 更新时间:2023-11-30 23:17:55 24 4
gpt4 key购买 nike

在我的场景中,每次更改属性时,我都想触发 OnPropertyChanged 事件

是否可以编写一个自动执行的基本 ViewModel,可能会在属性值更改时传递 nameof(property)?

提前致谢。

最佳答案

是否可以在不编写代码的情况下触发 PropertyChanged 事件? ,但您必须使用第 3 方库将调用注入(inject)名为 Fody 的调用。您可以在以下位置找到它:https://github.com/Fody/PropertyChanged

如果您愿意编写一点代码,您可以将它放在您的基类中(C#6 for ?.并且您需要System.Runtime.CompilerServices对于 CallerMemberName:

protected void OnPropertyChanged([CallerMemberName]string propertyName = "")
{
PropertyChanged?.Invoke(this, new PropertyChangedEventargs(propertyName));
}

所以在您的属性 setter 中,您只需放置

set
{
backingField = value;
OnPropertyChanged();
}

关于c# - 是否可以触发 OnPropertyChanged 事件而不在 ViewModel 的属性 setter 中显式调用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41154820/

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