【发布时间】:2023-03-24 00:53:01
【问题描述】:
只是想知道 C# 文本框多行可以容纳多少个字符?
【问题讨论】:
-
@Kim Gräsman:你怎么知道这个问题涉及winforms?
只是想知道 C# 文本框多行可以容纳多少个字符?
【问题讨论】:
查看TextBox 的MaxLength 属性——它存储了控件可以占用的最大字符数;根据文档,它是可变的。不过,通常默认值足够大。 (虽然我想既然你提出了这个问题,它可能不是!)
从文档中,您可以看到 MaxLength 的最大值为 2147483646。当然,这受到目标机器内存的限制。
【讨论】:
其他答案似乎假设 WinForms 开发。
如果您正在做 ASP.NET 开发,请注意 System.Web.UI.WebControls.TextBox 类的 MaxLength 属性在 TextMode = Multiline 时会被忽略。原因很简单:<textarea> HTML 元素没有提供任何方法来限制其内容的长度。
您需要编写一些客户端脚本来强制执行max length on a textarea。
【讨论】:
适用于 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 版平台:
如果 MaxLength 属性设置为 0,则最大数量 用户可以输入的字符是 32,766 或基于 可用内存,以较小者为准。
有关更多信息,请参阅link
【讨论】:
我认为您可以放入 Windows.Forms.TextBox 的文本大小没有任何固定限制(指定 C# 无关紧要)。我有时会在其中放入几兆字节的字符数据,并且效果令人满意。
但是,可能存在实际限制 - 控件并非面向处理大量文本,因此性能会随着音量的增加而下降。
根据用户的硬件,这可能是也可能不是问题。
如果您需要对数兆字节的文本区域进行良好的编辑,那么使用设计合理的编辑控件将是一个好主意。
【讨论】: