gpt4 book ai didi

c# - WPF中的MVVM如何与viewmodel通信

转载 作者:行者123 更新时间:2023-12-03 10:28:55 26 4
gpt4 key购买 nike

我想我对 MVVM 中的通信方式仍然有些模糊。我读到您不应该使用事件与 View 模型进行通信,所以我假设您发送命令。

然而,命令实际上是在可视化树( View )中冒出来的,对吧?所以它可能会到达一些可以处理命令的目标控件。该目标控件是否具有可以修改模型的 View 模型?

抱歉,我真的很困惑如何从 View 获取命令到模型。我假设以另一种方式获取信息只是让模型实现 Inotifypropertychanged 以告诉 viewmodel 它已更改然后让 viewmodel 实现 inotifypropertychanged 以便 View 可以绑定(bind)到 viewmodel 并更新属性的简单问题。

http://blogs.msdn.com/blogfiles/erwinvandervalk/WindowsLiveWriter/ImplementingtheModelViewViewModelpattern_D996/image_14.png

最佳答案

并非所有命令都冒泡 - 这些都是 RoutedUICommands,它们只是框架提供的 ICommand 接口(interface)的特定实现。您可以实现自己的具有自定义行为的 ICommand 对象,并像普通对象一样操作(无冒泡、隧道)。如果您在 ViewModel 中创建它们,某些 View 对象(如 Buttons 和 MenuItems)可以通过它们的“Command”属性直接绑定(bind)到它们。

关于c# - WPF中的MVVM如何与viewmodel通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18241422/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com