从Prism应用程序引用正确的System.Windows.Interactivity dll

Jos*_*osh 12 wpf prism expression-blend

我正在构建一个WPF Prism应用程序.应用程序到了我希望能够将EventTriggers添加到控件的位置,以便我可以在底层视图模型上调用命令.但是,我似乎无法引用正确的DLL来使项目运行.目前,我引用Microsoft.Expression.Interactions,并System.Windows.Interactivity从该C:\Program Files (x86)\Microsoft SDKs\Expression\Blend\.NETFramework\v4.0\Libraries目录.

当我运行模块时,我收到此错误:

无法加载文件或程序集'System.Windows.Interactivity,
PublicKeyToken = 31bf3856ad364e35'或其依赖项之一.
该系统找不到指定的文件.

我检查了System.Windows.Interactivity反射器中的组件,可以看到它引用:

  • mscorlib程序
  • PresentationCore
  • PresentationFramework
  • 系统
  • System.Core程序
  • System.Xaml
  • WindowsBase

所有引用都指向4.0框架.我从.NET参考选项卡中引用了每个参考选项卡,确保每个都是4.0版本.所有这些引用都从C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0目录中加载.

我需要另外一个下载System.Windows.InteractivityMicrosoft.Expression.Interactions程序集在我的环境中工作吗?

Mik*_*ost 11

由于某种原因,我仍然无法理解,Prism包含了它自己的Blend SDK程序集版本.因此,您应该从Prism发行版的Lib\Desktop文件夹(假设您使用的是Prism v4)而不是Blend SDK安装中引用Microsoft.Expression.Interactions.dll和System.Windows.Interactivity.dll.


Rya*_*uer 6

对于登陆此页面的人遇到此问题但上面给出的解决方案不起作用时,您可能会看一下:Prism程序集引用失败:System.Windows.Interactivity