可能重复:
在 C# winforms 中按名称查找控件
想象一下,我们有 4 个文本框(和一个按钮):
textBox1:(这里我们必须输入我们要改变背景的文本框的名称)
文本框2:()
文本框3:()
文本框4:()
在我们的第一个文本框中,我们输入任何其他文本框的名称,当我们点击一个按钮时 - 背景会相应地改变。
通常我会做这样的事情:
private void button1_Click(object sender, EventArgs e)
{
string variableName = textBox1.Text();
if (variableName == "textBox1")
{
textBox1.BackColor = Color.Black;
}
else if (variableName == "textBox2")
{
textBox2.BackColor = Color.Black;
}
else if (variableName == "textBox3")
{
textBox3.BackColor = Color.Black;
}
else if (variableName == "textBox4")
{
textBox4.BackColor = Color.Black;
}
}
另一种方法 -执行相同操作的更简单的方法是:
private void button1_Click(object sender, EventArgs e)
{
string variableName = textBox1.Text();
variableName.BackColor = Color.Black;
}
就这样!所以我的问题是:
是否可以将字符串转换为“控件名称”,如示例所示?