尝试将文本值从单击的按钮中获取,在我的脑海中就是这样......
private void button2_Click(object sender, EventArgs e)
{
string s = thisbutton.text
}
答案 0 :(得分:19)
触发事件的对象是sender
,所以:
private void button2_Click(object sender, EventArgs e)
{
string s = (sender as Button).Text;
}
答案 1 :(得分:2)
应该是这样的:
private void button2_Click(object sender, EventArgs e)
{
string s = this.button2.Text;
}
答案 2 :(得分:2)
只需将发件人对象转换为Button对象并访问text属性:
protected void btn_Click (object sender, EventArgs e){
Button btn = sender as Button;
string s= btn.Text
}
答案 3 :(得分:1)
在事件处理程序的每个构建中,有2个参数sender
和e
。Sender
引用触发事件的对象。第二个参数e
包含一些有关事件的信息(例如指针的位置和其他此类事件)
您只需将它带到按钮类型并获取您想要的信息
答案 4 :(得分:0)
尝试在按钮事件中应用此示例
private void button_click(object sender, EventArgs e)
{
var getValue = ((Button)sender).Text; //this will get the value of the text using sender
}
答案 5 :(得分:0)
上面的示例对我不起作用,所以我尝试了:
private void button2_click(object sender, EventArgs e)
{
string s = (sender as Button).Content.ToString();
}
答案 6 :(得分:0)
之前有人问过这个问题,我所使用的平台可能与OP所使用的平台略有不同,但是我对GTK提出了相同的问题。
我正在使用GTK2 +在OSX的Xaramin / Visual Studio中进行开发,对我来说,最初的接受答案很接近,但是会产生错误.Text
不存在。就我而言,它必须为Label
。这对我有用:
protected void Button_Clicked(object sender, EventArgs e)
{
Button btn = sender as Button;
lblWhichButton.Text = btn.Label;
if (btn.Label == "<<<" )
i--;
else
i++;
lblCounter.Text = "" + i;
}