MVVM View 事件 Viewmodel 命令绑定(bind)

标签 mvvm prism viewmodel commandbinding

我正在寻找一个关于如何使用 Prism 实现事件聚合器的好(阅读:简单)示例。我从未使用过 Prism,而且我对 MVVM 本身也很陌生。

我有一个 WPF Canvas 作为 View ,我想在 Viewmodel 中处理 Canvas 上的 MouseUp 事件。现在,我们组织的高层希望我使用 Prism,显然 Prism 推荐使用事件聚合器,这就是为什么我需要一个示例来让我开始。

最佳答案

为此,您只需要来自 MVVMLight 或来自 System.Windows.Interactivity (Blend SDK) 的 EventToCommand 行为。我建议您使用 MVVMLight 版本,因为它有一些有用的特色:)

<Canvas>
<i:Interaction.Triggers>
    <i:EventTrigger EventName="MouseUp" >
        <i:InvokeCommandAction Command="{Binding YourMouseUpViewModelCommand}" />
    </i:EventTrigger>
</i:Interaction.Triggers>
</Canvas>

Prism 中的 EventAggregator 我主要用于解耦 Viewmodel 到 Viewmodel 的通信。

关于MVVM View 事件 Viewmodel 命令绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11030417/

相关文章:

wpf - MVVM 中的条件逻辑与重复

c# - 如何选择 WPF Prism 应用程序使用的 IoC 容器?

silverlight - 无法在 xaml 中创建 View 模型实例

.net - 如何同时使用 DTO 和 ViewModel?或者这是不可能的?

c# - 在 prism 中检索 View 的 ViewModel

java - Android MVVM RecyclerView ClickListener Kotlin 到 Java 转换

c# - UI 未从单独 ViewModel 的命令调用的 ObservableCollection 进行更新

c# - 将 ComboBox 的 SelectedValue 分配给 viewmodel wpf 的字符串属性

c# - MVC4 C# 从数据库中填充 View 模型中的数据

c# - 另一个 ViewModel 的属性不会改变