gpt4 book ai didi

c# - 在 C# 中,如何向名称以特定字符串开头的所有按钮添加单击事件?

转载 作者:行者123 更新时间:2023-11-30 20:42:33 24 4
gpt4 key购买 nike

我正在为我的 C# 编程类(class)编写一个简单的计算器脚本。它当然会有按钮 0-9,这些按钮将更新输出文本框以添加单击的任何按钮的数量。我现在的问题是我不想在我的脚本中有 10 个不同的点击事件。我宁愿有一个循环遍历按钮,将相同的点击事件添加到每个按钮,然后根据按钮决定将什么数字添加到输出。

所以现在,我有一个“1”按钮的点击事件,就是这个……

    private void btnNum1_Click(object sender, EventArgs e)
{
txtOutput.Text = Convert.ToString(txtOutput.Text + "1");
}

这很好用,但是,我还是不想重复 10 次。我怎样才能创建一个循环来防止这种情况发生?

按钮名称为 btnNum1、btnNum2、btnNum3 等。

最佳答案

假设按钮文本只是“1”、“2”等,您可以这样做:

private void btnNum_Click(object sender, EventArgs e)
{
var button = sender as Button

txtOutput.Text += button.Content.ToString();
}

然后只需将此事件应用于所有按钮即可。

另请注意,您不需要 Convert.ToString(),因为您尝试转换的内容已经是一个字符串。使用 += 也可以稍微清理一下您的代码。

关于c# - 在 C# 中,如何向名称以特定字符串开头的所有按钮添加单击事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31306685/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com