Eri*_*ric 5 c# string winforms
今天我发现TextBox.Text有一个奇怪的问题,如果字符串长度太大,文本框看起来就像是空的,但实际上我仍然可以选择/复制/粘贴,只是看不到字符.
我写了一个小的winform来测试它,我发现如果字符串长度超过5460,问题就出来了.
我使用的是Win7 64,VS2010.我知道在单行文本框中显示如此大的字符串是没有意义的,但我想知道根本原因.
而且我也注意到它在Win2008中没有发生,即使在Win7中我使用屏幕录像机时问题也消失了!太奇怪了!
您可以创建一个 if 检查器,它接受一个字符串,检查该字符串是否比允许的长度长。然后,您可以在字符串上运行一个函数,该函数返回一个被切成所需长度的字符串,可能在末尾带有 .. 来表明它被缩短了。也许是这样的:
public string Truncate(string source, int length)
{
if (source.Length > length)
{
source = source.Substring(0, length -2); //-2 because of the ".."
source += "..";
}
return source;
}
Run Code Online (Sandbox Code Playgroud)