C# MVVM SelectedItem.Property一旦更改
我是MVVM的新手,我被卡住了 我在主窗口中有一个列表框。列表框包含由DataTemplates显示的WhateOverviewModel类型的项。用户可以与这些项目交互,WhateOverviewModel有几个依赖属性,这些属性在交互过程中可能会更改 我的问题是: 如何(在MainWindowViewModel中)对当前所选WhateViewModel的DependencyProperties的更改做出优雅的反应。我个人会在WhateOverviewModel中实现一些事件,当列表框的SelectedItem更改时,我会附加到当前所选WhateOverviewModel的事件。但我认为在MVVM中可能有一种更优雅的方法来解决这个问题 谢谢。您应该在每个ViewModels上实现该界面。然后,当一个属性更改调用C# MVVM SelectedItem.Property一旦更改,c#,wpf,xaml,mvvm,C#,Wpf,Xaml,Mvvm,我是MVVM的新手,我被卡住了 我在主窗口中有一个列表框。列表框包含由DataTemplates显示的WhateOverviewModel类型的项。用户可以与这些项目交互,WhateOverviewModel有几个依赖属性,这些属性在交互过程中可能会更改 我的问题是: 如何(在MainWindowViewModel中)对当前所选WhateViewModel的DependencyProperties的更改做出优雅的反应。我个人会在WhateOverviewModel中实现一些事件,当列表框的Sel
PropertyChanged
事件时,视图将收到属性已更改的通知(只要绑定正确)。如果属性是列表或集合,请确保该列表基于
将所选WhateViewModel的属性添加到MainWindowViewModel,并将其绑定到列表框中。然后在MainWindowViewModel中,您可以连接到所选WhateViewModel的属性更改
有关更多指导,请阅读:
PropertyChanged
事件时,视图将收到属性已更改的通知(只要绑定正确)。如果属性是列表或集合,请确保该列表基于
将所选WhateViewModel的属性添加到MainWindowViewModel,并将其绑定到列表框中。然后在MainWindowViewModel中,您可以连接到所选WhateViewModel的属性更改
有关更多指导,请阅读:
CurrentWhatch
作为MainWindowViewModel
的属性,并绑定列表框。在其上选择EdItem
属性。这样,MainWindowViewModel
就知道所选内容何时发生更改,并且可以注册/注销它感兴趣的事件。将CurrentWhatEver
作为MainWindowViewModel
的属性,并绑定列表框。在其上选择EdItem
属性。通过这种方式,MainWindowViewModel
可以知道所选事件何时发生更改,并可以注册/注销它感兴趣的事件。viewmodel之间的通信可以通过多种方式完成
- 信使/调解人,如一种形式
- 类似于来自
- 或者简单地使用harcoupling并订阅mainviewmodel中WhateViewModel中的事件
WhateOverviewModel有一个列表,该列表也绑定到一个列表框(在 数据模板),并取决于我在WhateOverview模型中选择的内容 我想在MainViewModel中显示某种类型的“配置器” JensFister1 1小时前
为什么不简单地将SelectedWhateViewModel.SelectedListEntryProperty绑定到configurator视图?你能发一些代码吗 viewmodel之间的通信可以通过多种方式完成
- 信使/调解人,如一种形式
- 类似于来自
- 或者简单地使用harcoupling并订阅mainviewmodel中WhateViewModel中的事件
WhateOverviewModel有一个列表,该列表也绑定到一个列表框(在 数据模板),并取决于我在WhateOverview模型中选择的内容 我想在MainViewModel中显示某种类型的“配置器” JensFister1 1小时前
为什么不简单地将SelectedWhateViewModel.SelectedListEntryProperty绑定到configurator视图?你能发一些代码吗 您使用的是thv view first还是view modelfirst方法?为什么有一个包含ViewModels列表的列表框?通常情况下,每个视图都有一个viewModel,每个viewModel都有一个模型列表(例如),您可以在视图中将列表框绑定到这些模型。除非这是您的意思。viewmodel有一个viewmodels列表,该列表绑定到xaml中的列表框。您使用的是thv view first还是view modelfirst方法?为什么有一个包含viewmodels列表的列表框?通常情况下,每个视图都有一个viewModel,每个viewModel都有一个模型列表(例如),您可以在视图中将列表框绑定到这些模型。除非这是您的意思。viewmodel有一个viewmodels列表,它绑定到xaml中的列表框。@JensPfister1希望在MainViewModel中作出反应,而不是在View中。@JensPfister1希望在MainViewModel中作出反应,而不是在View中。这是我已经做过的。因此,除了WhateViewModel中的一个事件,没有其他解决方案可以在重要属性发生更改时发出通知?也许您可以更详细地解释WhateViewModel发生了什么以及如何发生