2014-01-27 102 views
1

今天我開始使用類。我創建了一些類來讓我的MainWindow.xmal.cs略小一些。創建所述第一類和調試完畢後,我得到以下錯誤消息:錯誤:mscorlib.dll中發生類型'System.StackOverflowException'的未處理異常

Eine nicht behandelte Ausnahme des Typs "System.StackOverflowException" ist in mscorlib.dll aufgetreten.

Eine nicht behandelte Ausnahme des Typs "System.StackOverflowException" ist in APPLICATION.exe aufgetreten.

class Sprachpaket_ENG_Template01 
{ 
    MainWindow MW = new MainWindow(); 

    public void Template01() 
    { 
     MW.checkBox_1_Bcc.Content = "Bcc:"; 
     MW.checkBox_1_Cc.Content = "Cc:"; 
    } 

- >這會導致錯誤:主窗口MW =新主窗口();

+6

錯誤是在// ...代碼 – pm100

+0

最好的辦法使這將是'公衆詮釋美孚{獲得{返回Foo; }}',所以也許找那樣的東西。 –

+0

究竟在哪裏?這只是一些更多的任務,如... MI_04.Header = CHN_MT.MenuitemTitel_04; ... 等等。 – gpuk360

回答

5

從您的編輯和評論,你有這樣的:

class Sprachpaket_ENG_Template01 
{ 
    // Create a new MainWindow whenever Sprachpaket_ENG_Template01 is created 
    MainWindow MW = new MainWindow(); 
} 

class MainWindow() 
{ 
    public MainWindow() 
    { 
     // Create a new Sprachpaket_ENG_Template01 whenever MainWindow is created 
     Sprachpaket_ENG_Template01 ENG_01 = new Sprachpaket_ENG_Template01(); 
    } 
} 

你有一個無限循環在這裏,這就是爲什麼你得到一個堆棧溢出。

你可能想通過主窗口作爲參數的構造函數Sprachpaket_ENG_Template01:

class Sprachpaket_ENG_Template01 
{ 
    MainWindow MW; 

    public Sprachpaket_ENG_Template01(MainWindow mw) 
    { 
     MW = mw; 
    } 
} 

class MainWindow() 
{ 
    public MainWindow() 
    { 
     Sprachpaket_ENG_Template01 ENG_01 = new Sprachpaket_ENG_Template01(this); 
    } 
} 
+0

好的,非常感謝你,我想我已經明白了!我正在努力做到這一點 - >在幾分鐘內回覆。 ;) – gpuk360

+0

它似乎工作,非常感謝你! ;) 但是,如何「運行」我的MainWindow中的類的內容? – gpuk360

+0

@Exception我不明白你的問題。你想要跑什麼?你可能想發佈一個單獨的問題... –

相關問題