c#中textBox1.Text 这个1 怎么yo9ng变量代替
时间: 2024-02-28 13:53:56 浏览: 128
在C#中,如果想要使用变量来代替控件名中的数字部分,可以使用字符串拼接的方式来实现。具体的代码示例如下:
```csharp
string controlName = "textBox1";
string propertyName = "Text";
string value = "Hello World!";
Control control = this.Controls[controlName];
control.GetType().GetProperty(propertyName).SetValue(control, value);
```
在这个示例中,首先定义了一个字符串变量controlName,用于存储要操作的控件的名称。然后定义了一个字符串变量propertyName,用于存储要操作的控件属性的名称。最后定义了一个字符串变量value,用于存储要设置的属性值。
接着,使用this.Controls[controlName]来获取要操作的控件。由于this.Controls返回的是ControlCollection类型,因此需要将其强制转换为Control类型。然后使用反射获取控件的属性,并设置其值为value。
需要注意的是,以上示例中使用了反射机制来动态获取和设置控件的属性值。反射是一项高级的技术,需要谨慎使用,建议在使用时仔细阅读相关文档并进行充分的测试。
阅读全文