2012-10-02 71 views
0

我正在將VS2008的一個小型C++/CLI項目遷移到VS2012,並且遇到了令人沮喪的問題。在VS2012中導致設計器問題的前向聲明

在我的MainForm中,我有兩個類的前向聲明。它們位於名稱空間聲明和MainForm聲明之間。

這兩個前向聲明導致設計者抱怨錯誤「可以設計類MainForm,但不是文件中的第一個類Visual Visualo要求設計人員使用文件中的第一個類移動類代碼,以便它是該文件中的第一個類,並嘗試再次加載設計器。「

有關潛在解決方案的任何想法?我試着把這些參考文獻放在課堂上,課後也沒有得到積極的結果。

+1

也許向前聲明'MainForm'對方前鋒之前的聲明? – jpm

+0

哈哈,天才等等簡單。工作很好。謝謝。 – fooOnYou

+0

請記住,如果我讓它成爲真正的答案? – jpm

回答

1

Visual Studio只需首先看到MainForm類。要做到這一點無需添加最簡單的方法包括將轉發聲明MainForm本身:

namespace TheNameSpace 
{ 
    ref class MainForm; 
    // Other forward declarations go here 

    public ref class MainForm 
    { 
     //Full class declaration goes here 
    }; 
} 
+1

這不適合我。還是一樣的錯誤。清潔和重建後的事件。請注意,我的「MainForm」繼承自System :: Windows :: Form :: UserControl。有關係嗎? –

+0

不起作用得到相同的錯誤。 –