2011-08-03 34 views
1

我寫了一個小套接字應用程序。 「服務器」和「客戶端」都具有獨立的發送和接收線程。服務器在控制檯(主線程)上發送日誌消息,在另一個單獨的線程上運行的窗體上「客戶端」被「附加」。 (簡要介紹..)將字符串放入TextBox.Text的奇怪問題

我不明白的是,當一個客戶端收到一個包含簡單字符串消息的簡單數據包時,客戶端接收線程會將它傳遞給表單中調用的方法巫婆應該只顯示給用戶,但TextBox不顯示整個字符串,奇怪的是相同的代碼位置在控制檯wright上顯示相同的字符串。

這種方法已經被調用表格線

void WriteTextInv(string s) //passed s="<0> hello" 
{ 
    Console.WriteLine(s); //displays "<0> hello" 
    textBox1.Text=s; //textBox shows only "<0>" 
} 

我缺少一些基本的還是什麼?

也沒有,該textBox1的沒有設置「的MaxLength」 3 ..

+0

這不是它,我可以沒有任何問題運行相同的代碼。字符串'真正包含什麼? –

+3

什麼'Console.WriteLine(textBox1.Text);'輸出如果你把它添加到你的方法的末尾呢? –

+0

你確定你在主UI線程? .NET 2和4實際上可以讓你從不同的線程設置.Text屬性,但它在調試器中會出錯。 – MickyD

回答

0

文本框的寬度犯規讓它顯示整個字符串