如何以编程方式更改按钮文本?

How to programmatically change button text?

我正在尝试以编程方式更改按钮的文本。我有许多名称格式为 btnXXX 的按钮,其中 XXX 是一个数字。

databaseFunc.SelectThings("uspSelectCategoryNames", noParam, noValue);
dataTable = databaseFunc.dataTable;
for (int x = 0; x < dataTable.Rows.Count; x++)
{
    btn[x].Text = dataTable.Row[0][0].ToString();        
}

如何获取此作业中名称为 btnXXX 的按钮:btn[x]

您可以创建一个包含按钮的数组。您可以使用索引轻松检索它们:

Button[] buttons = new Button[] { btn0, btn1, btn2 };

buttons[0].Text = "abc";

这将设置第一个按钮的 Text

另一种选择是使用Find 来查找具有特定名称的控件。请注意,Find 调用中的 true 也会使其搜索子控件:

Control[] matches = this.Controls.Find("btn0", true);

Button b = matches.Length > 0 ? matches[0] as Button : null;

if (b != null)
{ }