我正在尝试对视图中绑定的视图模型执行AOP操作。我已经阅读了MVVM上的一些概念和示例。我注意到使用DataTemplate监听ViewModel更改并自动执行绑定。
我想在绑定之前对视图模型执行一些初始化,如何使用WPF / MVVM执行此操作?
感谢。
绑定方式。 。
通过数据上下文
view.DataContext = viewModel;
通过内容和模板
<DataTemplate DataType="{x:Type vm:SampleViewModel}"> <vw:SampleDisplayView /> </DataTemplate>
我想拦截视图和视图模型并在绑定发生之前初始化它们。
更新: 我能够通过DataContextChanged事件拦截视图模型。现在我也需要初始化视图。
答案 0 :(得分:0)
我找到了一种方法来做到这一点。我实现了ViewLocator,因为大多数工具包都有这个。
ViewLocator是通过附加行为实现的,让我在查看viewmodel并在将其分配给datacontext之前进行初始化。