属性不存在:System.Windows.Interactivity?

7
我有一个使用C# / WPF编写的程序,存在一个持久性问题:无法加载/解析System.Windows.Interactivity。我使用Visual Studio 2010作为编辑器,并已安装Blend 4 + Blend 4 SDK。

......

xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity">

为什么还会返回"未找到程序集"的结果?比如我的类库CustomBehaviorLibrary缺失了吗?

好的,这可能是一个愚蠢的问题,但我还是得问一下:你是否添加了对System.Windows.Interactivity的引用?使用的是哪个版本的VS?它在运行时能正常工作吗? - Alan
2
请尝试这个;) xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" - Kapitán Mlíko
@KizuHikaru 如果你还没有找到,你也可以在这里查看:https://dev59.com/TFvUa4cB1Zd3GeqPvJ_t。你需要两个不同的交互式dll,其中一个是特定于WPF的。 - Kapitán Mlíko
如果我的回答没有帮助到您,请发布您所遇到的确切错误。 - Alan
谢谢,这对我帮助很大。我对WPF完全是个新手,昨天才开始学习WPF。:P - Hyde
2个回答

10
如果它在运行时工作但在设计时不起作用,那么我会责怪VS 2010有漏洞。 我曾经遇到过VS 2010无法识别导入XAML的本地命名空间,但是在VS 2012中打开后,它在设计器中可以正常工作。 不幸的是,Visual Studio 2010的XAML / WPF支持远非完美。 Expression Blend或Visual Studio 2012更好。
我确实喜欢ViktorLaCroix的建议。 我会尝试
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"

尝试使用clr-namespace导入并查看是否有所帮助,这就是我使用的方法,它可以正常工作。我也会向您展示库的参考详细信息。

System.Windows.Interactivity
C:\Program Files (x86)\Microsoft SDKs\Expression\Blend\.NETFramework\v4.0\Libraries\System.Windows.Interactivity.dll
v4.0.30319

谢谢,这对我帮助很大。我是WPF的新手,昨天才开始学习。 :P - Hyde
3
嗨,陌生人!在这里!因为你提到了我,所以请收下我的赞美!:D - Kapitán Mlíko

6

1
正确的软件包是Expression.Blend.Sdk - Randy Walker
@RandyWalker 对我来说,就像答案中所述。 - ed22

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接