c#主窗体不同控件下有10个TextBox,命名为txt1到txt10,如何快速提取txt1到txt10的值
时间: 2024-09-12 22:01:54 浏览: 30
C# WinForm窗体及其控件的自适应
在 C# 中,如果你有一个主窗口(Form),并且在这个窗口的不同控件上添加了10个 TextBox 控件,分别命名为 txt1 到 txt10,你可以通过循环遍历它们并获取每个 TextBox 的文本值。以下是基本的步骤:
```csharp
// 假设你是从设计视图中直接创建的控件,可以直接访问它们
foreach (var textBox in this.Controls.OfType<TextBox>())
{
string value = textBox.Text;
// 这里可以根据索引,例如 txt1 的索引是 0
if (textBox.Name == "txt" + (textBox.Tag ?? 1).ToString()) // Tag 可用于存储额外信息,如果有的话
{
Console.WriteLine($"Text of {textBox.Name}: {value}");
}
}
// 如果你想按名称的数字部分动态查找,可以稍微修改一下上面的条件判断
string[] names = new string[10] {"txt1", "txt2", ..., "txt10"};
for (int i = 0; i < names.Length; i++)
{
TextBox textBox = Controls.Find(names[i], true).FirstOrDefault();
if (textBox != null)
{
string value = textBox.Text;
Console.WriteLine($"Text of {names[i]}: {value}");
}
}
```
阅读全文