我正在尝试使用wpf工具包扩展向导控件在wpf中制作向导。
我需要阻止用户继续到下一页,除非满足某些条件。
对另一个问题的回答建议将CanSelectNextPage
属性绑定到当前页面后面的代码中的布尔属性。
我在实施INotifyPropertyChanged
时遇到了麻烦。在上面链接的答案中,他的MainWindow
类扩展了INotifyPropertyChanged
。这怎么可能呢?难道MainWindow
类不需要扩展Window类吗?
另外,INotifyPropertyChanged
位于哪个汇编中?MSDN说它在System.ObjectModel.dll
中,我似乎没有…
他的MainWindow类实现了 INotifyPropertyChanged,它在System.ComponentModel中找到。
这篇MSDN文章应该解释如何使用它:https://msdn.microsoft.com/en-us/library/vstudio/system.componentmodel.inotifypropertychanged(v=vs.100).aspx
INotifyPropertyChanged将在给定属性更改时通知客户端,例如您的UI。你可以将"next"按钮的可见性绑定到类的布尔属性,并在所有其他属性设置完毕后将布尔属性设置为true。
编辑:我应该添加,为了绑定一个布尔值到一个按钮的可见性,你需要使用一个IValueConverter。
首先,INotifyPropertyChanged
是一个接口,不是一个类。因此,虽然一个类只能继承单个类(这里是Window
类),但它可以实现多个接口。
接口本身位于System.ComponentModel
命名空间的System.dll
程序集中。