很抱歉,如果我的问题看起来有点不怎么样,但我找不到答案。我想在我的XNA游戏中使用DirectInput。我已经阅读过,似乎这是从XBox 360控制器以外的游戏手柄获取输入的最佳方式。第一步是包含Microsoft.DirectX.DirectInput命名空间,但我不太清楚如何。简单地将它放在我课程的开头不起作用,视觉C#无法识别它。
这让我想到我应该下载DirectX SDK吗?那里有很多东西,文件很大我怎么才下载单个命名空间?这甚至可能吗?如果我可以下载单个命名空间,我将文件放在哪里?
现在你可以看到我脑子里的所有问题。那么如何让visual C#识别出Microsoft.DirectX.DirectInput命名空间,以便我可以使用方法,属性和所有好东西呢?
谢谢!
答案 0 :(得分:6)
您需要设置对包含您要使用的代码库的DLL的引用。据推测这是SDK的一部分,所以是的,你应该下载它。然后,在Visual Studio中
成功添加引用后,VS应识别using指令(以及您从程序集中使用的任何类型)。
请注意,引用了程序集;程序集与名称空间不同。初学者经常会混淆两者。在不同程序集中定义的类型可以位于同一名称空间中; BCL有几十例这样的例子。
此外,“using”指令不会导致任何东西被加载或类似的东西;它只允许您指定类型而不完全限定名称。实际上,可以在不使用using
指令的情况下使用C#进行编码。例如,以下代码文件是等效的:
using System.Collections.Generic;
public static class Collector
{
public static ICollection<T> Collect(IEnumerable<T> enumerable)
{
return new List<T>(enumerable);
}
}
和
public static class Collector
{
public static System.Collections.Generic.ICollection<T> Collect(System.Collections.Generic.IEnumerable<T> enumerable)
{
return new System.Collections.Generic.List<T>(enumerable);
}
}
答案 1 :(得分:1)
下载SDK。它不会与您的应用程序一起重新分发..但是开发DirectX应用程序所需的一切都将包含在其中。安装后,“添加引用”对话框中将有新条目。
答案 2 :(得分:0)
为了利用DirectX,您需要下载SDK。
根本无法下载部分内容。即使是这样,我也绝不会建议那样做。