我知道在vb.net中你可以做Exit Sub
但我想知道如何退出按钮中的点击事件?
这是我的代码:
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "" || textBox2.Text == "" || textBox3.Text == "")
{
//exit this event
}
}
答案 0 :(得分:29)
使用return
声明。
答案 1 :(得分:20)
使用return
关键字。
来自MSDN:
return语句终止 执行它的方法 出现并将控制权返回给 调用方法。它也可以返回 可选表达式的值。如果 该方法属于void类型 return语句可以省略。
所以在你的情况下,用法是:
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "" || textBox2.Text == "" || textBox3.Text == "")
{
return; //exit this event
}
}
答案 2 :(得分:8)
return; // Prematurely return from the method (same keword works in VB, by the way)
答案 3 :(得分:3)
return;
阅读初学者教程/书到C#不会有什么坏处。
答案 4 :(得分:2)
如果你不需要,我建议你尽量避免使用return / exit。有些人会虔诚地告诉你永远不要这样做,但有时它才有意义。但是,如果您可以对结构进行检查,以便不必输入它们,我认为这会使人们更容易在以后关注您的代码。
答案 5 :(得分:2)
有两种方法可以提前退出方法(不退出程序):
i)使用return关键字 ii)抛出异常。
异常仅应用于特殊情况 - 当方法无法继续且无法返回对调用者有意义的合理值时。通常你应该在完成后返回。
如果您的方法返回void,那么您可以在没有值的情况下编写return:
return;
答案 6 :(得分:2)
使用return关键字。
return; //exit this event
答案 7 :(得分:1)
哟可以直接谷歌“在c#中退出sub。”。
另外,为什么要检查每个文本框是否为空。如果这是一个asp.net应用程序,你可以为这些文本框放置requiredfieldvalidator并检查是否(Page.IsValid)
或另一种解决方案是不要使用这些条件:
private void button1_Click(object sender, EventArgs e)
{
if (!(textBox1.Text == "" || textBox2.Text == "" || textBox3.Text == ""))
{
//do events
}
}
最好使用String.IsNullOrEmpty:
private void button1_Click(object sender, EventArgs e)
{
if (!(String.IsNullOrEmpty(textBox1.Text)
|| String.IsNullOrEmpty(textBox2.Text)
|| String.IsNullOrEmpty(textBox3.Text)))
{
//do events
}
}