我想为一堆按钮制作一个点击事件。问题是我想使用按钮的文本,并将其传递给一个函数。现在点击事件被传递给一个对象发送者。当我尝试将其更改为 Button sender 时,它出错了。但我不知道我还能如何处理发件人文本。
这是正常的代码,它给出了一个错误:
private void guess_Click(object sender, EventArgs e)
{
guess(sender.Text);
}
我把它改成了这个,它给出了错误:
private void guess_Click(Button sender, EventArgs e)
{
guess(sender.Text);
}
问题: 我如何在此点击事件中使用按钮的文本属性,这是多个按钮的单个 click_event?
最佳答案
第 1 步:您需要将所有按钮的 Button Click
事件订阅到同一个 EventHandler
。这样您所有按钮上的按钮点击都会触发相同的“事件处理程序”。
第 2 步:您需要将对象 sender
转换为 Button
,然后访问其 Text
属性以获取按钮文本。
试试这个:
button1.Click += new System.EventHandler(MyButtonClick);
button2.Click += new System.EventHandler(MyButtonClick);
button3.Click += new System.EventHandler(MyButtonClick);
private void MyButtonClick(object sender, EventArgs e)
{
Button btnClick = (Button)sender ;
guess(btnClick.Text);
}
关于c# - 具有 Text 属性的多个按钮的一个 Click 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22284592/