2012-04-28 60 views
5

今天我發現TextBox.Text存在一個奇怪的問題,如果字符串長度太大,文本框看起來像是空的,但實際上我仍然可以選擇/複製/粘貼,只是可以'不要看人物。Winform TextBox無法顯示文本

我寫了一個小型winform來測試它,我發現如果字符串長度超過5460,問題就會出來。

我正在使用Win7 64,VS2010。我知道在單行文本框中顯示這麼大的字符串是無意義的,但我想知道根本原因。

而且我也注意到它在Win2008中並沒有發生,即使在Win7中,當我使用屏幕錄像機時,問題也消失了!太奇怪了!

+1

我的攝製。脫字符號仍然有效,但是文字是隱藏的。這是一個Windows錯誤。 – 2012-04-28 11:52:01

+2

我也遇到了這個 - 有沒有人有一個鏈接確認這是一個實際的Windows錯誤? – Tim 2013-04-03 21:27:58

+1

我有同樣的問題(Win7 x64)。不僅文本不可見,另一個問題是Text屬性返回截斷的文本! – user1068352 2013-08-23 17:17:23

回答

0

你可以做一個if-checker,它接受一個字符串,檢查字符串是否比允許的長。然後你可以在字符串上運行一個函數,它返回一個字符串,並將其縮減到所需的長度,也許用..在最後顯示它縮短了。 也許是這樣的:

public string Truncate(string source, int length) 
{ 
    if (source.Length > length) 
    { 
      source = source.Substring(0, length -2); //-2 because of the ".." 
      source += ".."; 
    } 
    return source; 
} 
0

我得到同樣的錯誤,並設置多真正解決it.You可以試試這個

<TextBox>.Multiline = true;