'禁用'C#中TextBox的MaxLength属性

And*_*ech 3 c# winforms

我目前正在研究Windows窗体应用程序,我需要一个不限制输入大小的TextBox Int32.MaxValue.

问题是,MaxLengthInt32对财产TextBox,当然,我不能设置一个号码,它比它的值.

理想情况下,我根本不想设置任何数字并完全"禁用"此检查.

有什么方法可以让我TextBox不限制输入大小吗?

Joe*_*Joe 11

将其设置为零

Windows NT 4.0,Windows 2000,Windows 2000 Professional,Windows 2000 Server,Windows 2000 Advanced Server,Windows XP Home Edition,Windows XP Professional x64 Edition,Windows Server 2003平台注意:如果MaxLength属性设置为0,则最大数量为用户可以输入的字符是2147483646,或者是基于可用内存的数量,以较小者为准.

Windows Millennium Edition平台注意:如果MaxLength属性设置为0,则用户可以输入的最大字符数为32,766或基于可用内存的数量,以较小者为准.

来自:http://msdn.microsoft.com/en-us/library/system.windows.forms.textboxbase.maxlength.aspx


编辑Windows窗体


Jon*_*eet 5

int.MaxValue无论如何,限制是无法达到的限制.您将无法创建近乎那么长的字符串.换句话说,如果你真的需要超过2 31个字符,那么你遇到的问题要大于TextBox.MaxLength.

如果您认为在单个GUI控件中拥有超过2GB的ASCII文本文件实际上是一种可用的体验,我可以问一下吗?如果你想编写一个可以处理大文件的全文编辑器,你可能不希望用它TextBox来开始......

编辑:其实我认为,你可能要设置限制int.MaxValue,通过测试确定-它可能是你接近极限之前,你的系统的其他位都将失败.弄清楚真正的限制是什么,如果你愿意,但我保证它会低于int.MaxValue......

  • @AndreasGrech:跨越什么界限?理智?实际上,您是否认为(例如)10亿的限制对您来说是一个问题?即使对于.NET`字符串来说,这可能太过分了. (3认同)