Winform TextBox无法显示文本

时间:2012-04-28 08:23:22

标签: c# winforms string

今天我发现TextBox.Text有一个奇怪的问题,如果字符串长度太大,文本框看起来就像是空的,但实际上我仍然可以选择/复制/粘贴,只是看不到字符。

我写了一个小的winform来测试它,我发现如果字符串长度超过5460,问题就会出现。

我正在使用Win7 64,VS2010。我知道在单行文本框中显示这么大的字符串是没有意义的,但我想知道根本原因。

我也注意到它在Win2008中没有发生,即使在Win7中我使用屏幕录像机时问题也消失了!太奇怪了!

2 个答案:

答案 0 :(得分: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;
}

答案 1 :(得分:0)

我得到了同样的错误并设置了多行真正解决了它。你可以试试这个

<TextBox>.Multiline = true;