更改C#按钮参数的最佳方法是什么



事件发生时,所有按钮上的文本都应该更改。代码如下所示。

button1.Text = "";
button2.Text = "";
button3.Text = "";
button4.Text = "";
button5.Text = "";
button6.Text = "";
button7.Text = "";
button8.Text = "";
button9.Text = "";

我能让它更简单吗,也许就像在使用循环的数组中一样?

尝试在列表中添加按钮,然后可以在循环中操作它们的text属性:

List<Button> btnLst = new List<Button>()
{
button1, button2, button3,
button4, button5, button6,
button7, button8, button9
};

foreach (Button btn in btnLst)
{
btn.text = "";
}

无论按钮位于哪个容器中,都可以要求提供其按钮。如果他们不在任何小组或分组框中,只是坐在表格中,他们将在this.Controls:中

this.Controls
.OfType<Button>()
.Where(b => Regex.IsMatch(b.Name,"button[1-9]"))
.ToList()
.ForEach(b => b.Text = "");

您可能也可以跳过OfType,因为所有控件都有一个Name和一个Text。。

如果你的按钮有其他共同点,比如它们有相同的标签,它可能像

this.Controls
.OfType<Button>()
.Where(b => b.Tag == "Hello")
.ToList()
.ForEach(b => b.Text = "");

如果你所有的按钮都在一个面板上,而没有其他东西在那里,或者如果有其他东西不是按钮,这会更容易,因为你可以跳过所在的位置

this.ThePanel
.OfType<Button>()
.ToList()
.ForEach(b => b.Text = "");

相关内容

最新更新