从方法中中断onclick事件
本文关键字:onclick 事件 中断 方法 | 更新日期: 2023-09-27 17:52:36
按钮的OnClick
事件被称为:
private void vkb7_Click_1(object sender, EventArgs e)
{
//method
button_start(object sender);
// do stuff 2
}
触发某个方法:
private void button_start(object sender)
{
bool some = true;
if (some)
{
return; // I'd also like to break "button click"
}
}
我想打破"按钮点击"事件从方法-我怎么做?
简单,让button_start()
返回布尔值:
private bool button_start(object sender)
{
bool some = ...;
return some;
}
private void vkb7_Click_1(object sender, EventArgs e)
{
//method
if (button_start(object sender))
return;
// do stuff 2
}
如果在button_start
中确定动作是否应该在vkb7_Click_1
中发生,则考虑使button_start
返回bool
,然后使用vkb7_Click_1
中的返回值。
另一方面,如果在button_start
中遇到错误条件,则抛出异常。
你不能真的"阻止"事件,因为它已经被触发了。但是,您可以根据结果手动处理点击。
private void vkb7_Click_1(object sender, EventArgs e)
{
bool result = button_start(sender);
if (result)
DoSomething();
else
DoSomethingElse();
}
private bool button_start(object sender)
{
bool some = true;
if (some)
return false;
return true;
}
First,设置button_start
的返回类型为bool
秒,如果要传递vkb7
按钮的发送者或vkb7
按钮的属性,
那么你应该像这样传递它:
button_start(发送方)所以代码应该是这样的:
private void vkb7_Click_1(object sender, EventArgs e)
{
//method
if(button_start(sender))
// do stuff 2
}
然后在方法
private bool button_start(object sender)
{
bool some = true;
if (some)
{
return true; // I'd also like to break "button click"
}
else
return false;
}