我正在尝试引用System.Windows.Interactivity以便support IsExpanded behavior command
但是只要我添加对此程序集的引用,我就会收到加载System.Windows 2.0的错误。这似乎是一个已知的错误,解决方案似乎只是引用该程序集。
我下载了Silverlight SDK,并在我的项目中引用了有问题的程序集。
但是,现在我在System.Windows和WindowsBase.dll之间遇到了很多冲突。像RoutedEventHandler这样的类都存在于两者中。必须是解决这个问题的一种方法,因为我看到人们成功地将这个Interactivity dll与wpf 4.0一起使用..
答案 0 :(得分:13)
如果你有一个WPF项目,你需要使用该程序集的WPF特定版本,也许你选错了.dll?
以下是我系统上的两个相应文件路径:
C:\Program Files (x86)\Microsoft SDKs\Expression\Blend\.NETFramework\v4.0\Libraries\System.Windows.Interactivity.dll
C:\Program Files (x86)\Microsoft SDKs\Expression\Blend\Silverlight\v4.0\Libraries\System.Windows.Interactivity.dll
答案 1 :(得分:1)
如果您的某个项目针对.NET 4.0客户端配置文件,您可能会发现切换到完整的.NET 4.0框架可以解决问题。
答案 2 :(得分:1)
运行运行在Visual Studio早期版本中的项目时出现此错误,但是我在VS2017中运行它。
我的问题已解决,方法是打开VS2017安装程序并修改我的安装,以选择VS 2017安装中的“ Visual Studio SDK for .Net混合” 组件。
Fissh
答案 3 :(得分:0)
Sonic,就像H.B.说你不能在WPF中使用Silverlight版本。您需要安装不同的WPF specific Expression Blend SDK而不是Silverlight。