Visual Studio 2017 – Expression交互发生了什么?

我广泛使用Expression interaction的CallMethodAction以MVVM友好的方式处理来自XAML的事件。

我刚刚在VS2017中创建了一个新的WPF项目,现在我看到旧的Expression命名空间已经消失了。 我在MSDN上找到了这个页面,这是我正在寻找的动作,但在引用该程序集并添加命名空间后,它不包含CallMethodAction。 那个页面是针对Silverlight的,这是WPF,所以我担心行动不再可用。

那么有人知道它是否已被删除/替换? 如何才能在viewmodel上调用事件处理程序?

(我确实知道InvokeCommandAction,但我更喜欢CallMethodAction,因为它会转发原始事件参数,并允许取消预览事件。)

编辑 :只是为了前进我尝试了InvokeCommandAction但它不再以相同的方式工作,我找不到有关新用法的任何文档。

我确实在MSDN上找到了Microsoft.Xaml.Interactions命名空间的这个引用 ,该命名空间似乎包含我需要的类,但该程序集似乎不存在。

我觉得我在这里遗漏了一些明显的东西。 我不知道他们如何能够对事件做出重大改变。

使用Visual Studio 2017安装程序安装“Blend for Visual Studio SDK for .NET”,您可以在“单个组件”页面的“SDK,库和框架”标题下找到它。

CallMethodAction在Microsoft.Expressions.Interactions.dll中定义。 此程序集不是.NET Framework的一部分,但您可以使用NuGet下载它: https : //www.nuget.org/packages/MicrosoftExpressionInteractions/

InvokeCommandAction类在System.Windows.Interactivity.dll程序InvokeCommandAction定义: https : InvokeCommandAction