修改按钮的功能单击
本文关键字:单击 功能 按钮 修改 | 更新日期: 2023-09-27 18:18:01
我知道答案可能真的很明显,但我在这里完全是在胡说八道。
我想做的是有一个简单的表单与两个按钮。第一个按钮显示一条消息说"1"。点击第二个按钮后,点击第一个按钮时显示"2"。再次点击第二个按钮后,它会返回显示"1"。
学习了javascript编程,我仍然在用javascript思考。我的第一个想法是:myButton.onclick =…
之后,我唯一能想到的是在第一个按钮的点击函数中有一个条件,并使用第二个按钮的点击来改变布尔值…
有更好的方法吗?
让button2改变点击button1时调用的方法:
private void button1_Click(object sender, EventArgs e)
{
Text = "1";
}
private void button1_Click2(object sender, EventArgs e)
{
Text = "2";
button1.Click -= button1_Click2;
button1.Click += button1_Click;
}
private void button2_Click(object sender, EventArgs e)
{
button1.Click -= button1_Click;
button1.Click += button1_Click2;
}
我明白了,当一个人第一次和第二次点击button2时会发生什么。但是如果你想说这是它必须遵循的模式,那么:
Bool bln = true;
private void button2_Click(object sender, EventArgs e)
{
if(bln)
text1();
else
text2();
bln = !bln;
}
private void text1()
{
// Whatever
}
private void text2()
{
// Whatever
}
用您正在寻找的任何内容填充方法。在这种情况下,这些方法也可以用于button1单击事件。
希望能有所帮助。
让第二个按钮的click处理程序设置一个消息变量,并简单地让第一个按钮的click处理程序显示它
edit:我是为asp.net写的。转换到winforms应该不难。
声明一个字符串变量:
public static mystring = "1";
在button2_click上你可以改变这个值。我展示的是永久更改一次的简单案例,但您可以编写代码以任何您喜欢的方式进行替换:
protected void btn2_Click(object sender, EventArgs e)
{
mystring = "2";
}
例如,要在1和2之间交替,可以设置int n = 1的值,并让btn2设置值为(3-n)。tostring ();
那么做:
protected void btn1_Click(object sender, EventArgs e)
{
Response.Write(mystring);
}
你必须做myButton.onclick-=function_name
+=是添加函数
-=是删除功能
你可以让它这样工作:
private void button1_Click(object sender, EventArgs e)
{
button1.Text = "Button 1 Text";
MessageBox.Show("B1 Function1");
button1.Click -= button1_Click;
button1.Click += button1_Click2;
}
private void button1_Click2(object sender, EventArgs e)
{
button.Text = "Button 1 Text 2";
MessageBox.Show("B1 Function2");
button1.Click -= button1_Click2;
button1.Click += button1_Click;
}