0

我有一个项目,它从数据库中获取数据并将该数据绑定到 xaml 中的某些元素。我添加了一个从数据库中获取新数据并希望刷新 xaml 中的数据绑定元素的按钮。

现在,我知道这样做的正确方法是在数据类中实现 INotifyPropertyChanged 事件,但我想避免这种情况,因为有很多属性。我发现只需调用'this.DataContext = data;' 在我从数据库中检索到新数据后,会更新 xaml 中的绑定。

谁能告诉我这种方法有什么问题?

谢谢!

4

2 回答 2

0

如果您不使用INotifyPropertyChanged接口,则不允许绑定机制工作,因为它不会知道您的数据的任何更改。
数据绑定是 WPF 中最强大的工具之一,如果您不使用它,您将不得不自己编写模型和 UI 之间数据更改的传播,就像在Winforms....

如果很难为您的每个类的每个属性编写实现,那么您可以创建一个代码片段.. 像 prop/propdp

于 2013-11-06T09:48:24.177 回答
0

很简单,如果你不想实现INotifyPropertyChanged接口,那就不要使用 WPF。WPF 通常是一种冗长的语言……我花了一段时间才习惯这一点。虽然有像ConvertersStyle和 s这样的机制Attached Properties使我们能够重用代码,但您经常会发现自己正在编写您以前编写的代码。只是习惯它,或改变语言。

总而言之,如果不实现INotifyPropertyChanged接口,就无法在 WPF 中编写有效的应用程序。

于 2013-11-06T09:34:05.607 回答