繁体   English   中英

如何将其他命名空间导入Visual C#?

[英]How to Import Other Namespaces into Visual C#?

对不起,如果我的问题似乎有点小,但我找不到答案。 我想在我的XNA游戏中使用DirectInput。 我已经阅读过,似乎这是从XBox 360控制器以外的游戏手柄获取输入的最佳方式。 第一步是包含Microsoft.DirectX.DirectInput命名空间,但我不太清楚如何。 简单地将它放在我班级的开头不起作用,Visual C#无法识别它。

这让我想到我应该下载DirectX SDK吗? 那里有很多东西,文件很大我怎么才下载单个命名空间? 这甚至可能吗? 如果我可以下载单个命名空间,我在哪里放置文件?

现在你可以看到我脑子里的所有问题。 那么如何让visual C#识别出Microsoft.DirectX.DirectInput命名空间,这样我才能使用方法,属性和所有好东西?

谢谢!

您需要设置对包含您要使用的代码库的DLL的引用。 据推测这是SDK的一部分,所以是的,你应该下载它。 然后,在Visual Studio中

  • 打开解决方案资源管理器
  • 打开要使用库的项目
  • 右键单击该项目的引用节点
  • 选择“添加参考”
  • 导航到并选择dll

成功添加引用后,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);
    }
}

下载SDK。 它不会与您的应用程序一起重新分发..但是开发DirectX应用程序所需的一切都将包含在其中。 安装后,“添加引用”对话框中将有新条目。

要利用DirectX,您需要下载SDK。

根本无法下载其中的一部分。 即使是这样,我也绝不会建议那样做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM