c# - MVVM SelectedItem.Property OnChanged MVVM SelectedItem.Property OnChanged

标签 c# wpf xaml mvvm

我是 MVVM 新手,但我陷入困境......

我在主窗口中有一个列表框。 ListBox 包含由 DataTemplates 显示的 WhatEverViewModel 类型的项目。用户可以与这些项目进行交互,并且 WhatEverViewModel 有几个 DependencyProperties,这些属性在交互过程中可能会发生变化。

我的问题是: 我如何优雅地(在 MainWindowViewModel 中)对当前选择的 WhatEverViewModel 的 DependencyProperties 的更改使用react。我个人会在 WhatEverViewModel 中实现一些事件,当 ListBox 的 SelectedItem 更改时,我会附加到当前选定的 WhatEverViewModel 的事件。但我认为在 MVVM 中可能有一种更优雅的方法来解决这个问题......

谢谢。

最佳答案

CurrentWhatEver 设为 MainWindowViewModel 的属性,并在其上绑定(bind) Listbox.SelectedItem 属性。这样,MainWindowViewModel 就知道所选的 WhatEver 何时发生更改,并可以注册/取消注册它感兴趣的事件。

关于c# - MVVM SelectedItem.Property OnChanged MVVM SelectedItem.Property OnChanged,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10330738/

相关文章:

c# - 在 Windows 8.1 中使用 IObservableVector<T> 的 DataVirtualization

c# - 使用 EF Core 处理 MySQL 零日期

wpf - WPF应用程序开始最大化,但屏幕分辨率与显示不匹配

c# - 手动键入 sql 以映射到 c# 对象,就像 .Include ("") 方法

c# - 从代码隐藏定义 VisualStates

c# - 类库中的可移植 XAML 样式

.net - 如何在 BackgroundWorker 中访问 COM 对象?

xaml - uwp 中的按钮图标着色

c# - mvvm在对象中将listview项目选择为list <string>

c# - 使用属性扩展密封类