C#如何通过通过变量选择按钮来更改按钮属性

时间:2018-11-07 09:27:19

标签: c# winforms button

我不想直接选择按钮来更改文本属性。 喜欢:

Button1.Text = "New Text"

相反,我想做更多类似的事情吗?:

for(int i = 0; i<5; i++)
{
   Button.id[i].Text = str[i];
}

我是C#和Windows应用程序的新手,所以也许有人可以帮助我解决这个问题。

2 个答案:

答案 0 :(得分:0)

您应该首先从i创建一个名称,假设Button{i},然后使用FindControl()查找按钮并进行分配:

for(int i = 0; i < 5; i++)
{
    string btnName = $"Button{i}";  //eg. Button1, Button2, Button3 ...
    Button myBTN = FindControl(btnName) as Button;
    myBTN.Text = str[i];
}

或者在winform应用程序中,可以使用FindControl()的ControlCollection.Find():

Button myBTN = this.Controls.Find(btnName, true).FirstOrDefault() as Button;

答案 1 :(得分:0)

尝试

    string[] str = { "New Text 1", "New Text 2", "New Text3", "New Text 4", "New Text 5" };
    Button[] button = { button1, button2, button3, button4, button5 };

            for (int i = 0; i < 5; i++)
            {
                button[i].Text = str[i];
            }
相关问题