private void save()
{
    ////...
    if(true)
    {?     //执行到此处时不执行下面的代码,直接跳出save()方法}
    ////...
}

解决方案 »

  1.   

    if(满足条件)
    {
         执行语句;
         return;
    }
      

  2.   

    private void save_Click(object sender, EventArgs e)
            {
                if (textBox1.Text == null | textBox2.Text == null) 
                {
                    MessageBox.Show("必填项必须填写!"); 
                    return ;   //用了
                }
                MessageBox.Show("执行!");   //此处仍然执行啊!!!    ?????
            }
      

  3.   

    呵呵!现在可以了,原因出在我的if(textBox1.Text == null | textBox2.Text == null)处,应该将null改为空"" ,你们的return是行额!
    谢谢各位大侠了!
      

  4.   

    在逻辑上看,极有可能是“if (textBox1.Text == null | textBox2.Text == null)”这个条件没满足,导致程序没进入“return"块而执行“MessageBox.Show("执行!"); //此处仍然执行啊!!! ?????”这句。
    建议用单步调试跟踪一下,如果textBox1.Text没字符的话,有可能是""(空),而不是"null"
      

  5.   

    “if (textBox1.Text == null | textBox2.Text == null)”代表只用当text内容什么也没有设置时。当然,“”这个空的字符串不代表null.应该设置为:
    “if (textBox1.Text == null | textBox2.Text == null|textBox1.Text==""|textBox2.Text=="")”
      

  6.   

    break语句:   
    break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch语句。由于它是用来退出循环或者switch语句,所以只有当它出现在这些语句时,这种形式的break语句才是合法的。 如果一个循环的终止条件非常复杂,那么使用break语句来实现某些条件比用一个循环表达式来表达所有的条件容易得多。   
      
    for(var i=1;i<=10;i++)   
      
    {   
       if(i==6) break;   
       document.write(i);   
     }   
    //输出结果:12345   
      
    continue语句:   
    continue语句和break语句相似。所不同的是,它不是退出一个循环,而是开始循环的一次新迭代。   
    continue语句只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用都会引起错误!   
      
    for(var i=1;i<=10;i++)   
      
    {   
      if(i==6) continue;   
      document.write(i);   
    }   
    //输出结果:1234578910   
      
        
      
    return语句:   
    return语句就是用于指定函数返回的值。return语句只能出现在函数体内,出现在代码中的其他任何地方都会造成语法错误!   
    当执行return语句时,即使函数主体中还有其他语句,函数执行也会停止!