簡體   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