c# - 通过 for 循环迭代文本框

标签 c# winforms textbox for-loop

假设我有 10 个文本框,我想将相同的文本放入每个文本框。我不想写 textBoxNum。 Text = "hello!" 十次所以我可能会写这样的东西:

for(int i=1; i<=10; i++)
{
    textBox + i. Text = "hello!";
}

显然,这是行不通的。

如何使用 for 循环完成此操作?

最佳答案

您需要将所有文本框加载到列表或数组结构中,这将允许您对其进行迭代。

TextBox[] boxes = { tb1, tb2, tb3, ... };

否则,您可以检查表单/容器的 Controls 属性以查找 TextBox 类型的项目。如果控件可以嵌套在更深的容器中,您可能需要递归地探索它们(在这一点上,我会认真考虑数组方法,除非您有一些可怕的文本框要加载)。但作为起点,您可能有

foreach (var tb in this.Controls.OfType<TextBox>())
{
    tb.Text = "whatever";
}

关于c# - 通过 for 循环迭代文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7177505/

相关文章:

c# - Entity Framework 可选关系导致 "conflicting multiplicities"

C#.NET Winform 按键事件无法取消

c# - 在 wpf 或 winform 中使用数据网格(或数据 GridView )时遇到问题

c# mvc textboxfor 用于多个字符串

c# - 字符串或二进制数据将在 Linq 中被截断

c# - 使用自定义格式解析 DateTime

c# - 在特定时间间隔后执行任务的最佳做法是什么?

c# - BackgroundWorker 卡住了我的 UI,而 BeginInvoke 似乎速度极快

javascript - 单击单元格外部后如何退出文本框

asp.net - 将所有文本框(输入字段)的背景颜色设置为透明