在C#中找不到System.Windows.Vector

我在Visual Studio 2010 Ultimate中制作Windows窗体应用程序,但无法使内置的Vector工作。

Microsoft表示.NET Framework 4中有一个System.Windows.Vector

也许我犯了一些大错,但Visual Studio抱怨尝试以任何方式使用Vector,而且它没有出现在IntelliSense自动完成中:

Vector v = new Vector(20, 30);

编译错误错误1找不到类型或命名空间名称“Vector”(您是否缺少using指令或程序集引用?)“

我尝试在顶部包含一个using System.Windows ,但这并没有解决问题。

我去了References – > Add Reference试图找到要添加的东西,但没有什么是显而易见的。

问题可能是:还在System.Windows命名空间中使用Vector列出,还有其他类,如RectApplication 。 我可以将它们用作System.Drawing.RectangleSystem.Windows.Forms.Application ,但这些都不会显示为某些System.Windows命名空间的一部分

我已经尝试了大约2个小时不同的东西,发现了这个相关的post (但是Vector .NET 4的一部分,所以他们的修复似乎不值得?) 这可能是相关的post,但我确实安装了.NET Framework 4 。

有没有人有Vector的例子? 我知道我可以参加第三方课程,但是我觉得我错过了一些东西,并希望学习/为其他人发布解决方案来搜索同样的问题。

添加对WindowsBase的引用。
Vector类在System.Windows命名空间内的WindowsBase.dll程序集中定义。

System.Windows.Vector是WPF的一部分,而不是Windows Forms,因此在尝试使用它时遇到了困难。 您可以添加对WindowsBase.dll的引用,但考虑到它旨在用于WPF应用程序而不是Windows窗体应用程序,您很可能从这样做中获得的好处很少。

微软决定在System.Windows中将WPF组件放在System.Windows和WinForms中是互联网上无休止混淆的根源,对于WPF的System.Windows.Presentation或类似的问题,我永远不会知道!

要找出必须添加到引用的程序集,使用ILSpy (OpenSource)之类的工具会非常有用。 在那里,您可以搜索所需的类型,并找出它实现的程序集以及您必须使用的名称空间。

找出实施组件可能非常困难,我必须经常这样做。 我发现它是一种快速的方法,并认为它可以在将来帮助你。