对于 XAML 视图,我将其挂接到this.ViewModel.PropertyChanged
如下:
ViewModel.PropertyChanged += (s, e) =>
{
if (e.PropertyName == "CurrentImage")
DoStuff();
};
这是因为 XAML 不够灵活,我无法在没有代码隐藏的情况下直接实现我想要的,还因为它是纯粹与 WinRT/XAML 相关的代码,而不是核心可移植项目。
然而,在视图的构造函数中,该ViewModel
属性为空,因此它的工作方式如下:
this.Loaded += (s2, e2) =>
ViewModel.PropertyChanged += (s, e) =>
{
if (e.PropertyName == "CurrentImage")
DoStuff();
};
我认为这(除了使用字符串来引用属性)可能不是很干净,并且可能应该有更好的方法来实现我想要的。有没有更理想的方法?