文本框输入值的最大长度可以从MaxLength属性中确定。但我们需要逐个为每个文本框执行此操作。
有没有办法为表单上的所有文本框设置一次MaxLength属性的值?
答案 0 :(得分:1)
您可以在On_Loaded事件的代码中执行此操作。查询表单上的所有控件并设置MaxLength。您还可以使用具有预定义MaxLength的TextBox创建自定义控件,并使用它而不是标准TextBox。
How to get ALL child controls of a Windows Forms form of a specific type (Button/Textbox)?
答案 1 :(得分:0)
是否使用递归调用,因为Form的面板和文本框都在面板内。
以下是获取表单上所有TextBox的扩展方法:
public static IEnumerable<TControl> GetChildControls<TControl>(this Control control) where TControl : Control
{
var children = (control.Controls != null) ? control.Controls.OfType<TControl>() : Enumerable.Empty<TControl>();
return children.SelectMany(c => GetChildControls<TControl>(c)).Concat(children);
}