Referencing the correct System.Windows.Interactivity dll from Prism application

限于喜欢 提交于 2019-12-18 04:00:15

问题


I have a WPF Prism application that I'm building. The application is to the point where I want to be able to add EventTriggers to controls so I can call commands on the underlying view model. However, I can't seem to reference the correct DLLs to make the project run. Currently, I'm referencing Microsoft.Expression.Interactions and System.Windows.Interactivity from the C:\Program Files (x86)\Microsoft SDKs\Expression\Blend\.NETFramework\v4.0\Libraries directory.

When I run the module, I get this error:

Could not load file or assembly 'System.Windows.Interactivity,
PublicKeyToken=31bf3856ad364e35' or one of its dependencies.
The system cannot find the file specified.

I checked the System.Windows.Interactivity assembly in reflector and can see that it references:

  • mscorlib
  • PresentationCore
  • PresentationFramework
  • System
  • System.Core
  • System.Xaml
  • WindowsBase

All the references point to the 4.0 framework. I've referenced each from the .NET reference tab, making sure that each one is the 4.0 version. All these references are being loaded from the C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0 directory.

Is there another download I need for the System.Windows.Interactivity and Microsoft.Expression.Interactions assemblies to work in my environment?


回答1:


For some reason that I still cannot fathom, Prism includes it's own version of the Blend SDK assemblies. So you should reference Microsoft.Expression.Interactions.dll and System.Windows.Interactivity.dll from the Lib\Desktop folder of the Prism distribution (assuming you're using Prism v4) rather than from the Blend SDK installation.




回答2:


For people landing on this page experiencing this problem but where the above given solution isn't working, you might have a look at: Prism assembly reference failure: System.Windows.Interactivity



来源:https://stackoverflow.com/questions/7286774/referencing-the-correct-system-windows-interactivity-dll-from-prism-application

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!