2014-12-05 26 views
0

我試圖改變WPF窗體上的文本框中的文本。到目前爲止:設置從主類以外的文本

這是我更新文本框的方法。這是一個在MainWindow.cs

public void BodyText(string message) 
    { 

     txtBody.Clear(); 
     txtBody = new TextBox(); 
     txtBody.Text = message; 
    } 

我試圖通過

MainWindow.BodyText(e.bodyresult); 

其中e.bodyresult是一個字符串

更新來自不同類的文本框,我讀了很多的不同事情,他們都沒有像我所期望的那樣工作。我相當新的C#,所以任何幫助,將不勝感激

+1

通常情況下,你只綁定'TextBox.Text'屬性設置爲具有所需的文本數據結構。但是如果你想以編程的方式來做,第一步就是不要創建一個全新的'TextBox'對象。只需設置Text屬性(即刪除您的'BodyText()'方法中的前兩個語句)。 – 2014-12-05 01:45:10

+0

@PeterDuniho我已經改變了,但它不會讓我調用該方法,因爲它不是一個靜態類?然而,我不能使用靜態類,因爲我需要傳遞文本框作爲參數 – 2014-12-05 01:48:25

+0

可能能夠將委託傳遞給另一個類,該類將用於調用您的BodyText方法......我沒有寫過c#在一段時間,但我曾經使用委託很多來更新一個用戶界面,而一個進程與他們一起運行 – markg 2014-12-05 01:49:43

回答

0

MainWindow是一個類的名稱。在其他課程中,您需要訪問充當主窗口的那種類型的實例。

事情是這樣的:

 MainWindow x = (MainWindow) App.Current.MainWindow; 
     x.BodyText("Message");