C#跳过或停止下一个功能

时间:2019-04-04 16:56:36

标签: c# function skip

我有一个按钮。一个按钮具有三个功能,当出现一两个功能时,我想跳过最后一个功能。

我试图返回;但是什么都没有。或禁用所有功能,或仍在执行其操作

以下是示例:

     private bool functionOne() 
     {
        if (blah blah == "" || blah blah2 == "" || blah blah3 == "")
        {
            MessageBox.Show("text");
            return true;
        }
        try
        {

            if (count == 1)
            {
                MessageBox.Show("Text");
                return true;
            }
            else
            {
                return false;
            }


        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }

    private bool functionTwo() 
    {
        if (blah blah == "" || blah blah2 == "" || blah blah3 == "")
        {
            MessageBox.Show("text");
            return true;
        }
        try
        {

            if (count == 1)
            {
                MessageBox.Show("text");
                return true;
            }
            else
            {
                return false;
            }


        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }

    private void functionThree() 
    {
        if (blah blah == "" || blah blah2 == "" || blah blah3 == "")
        {
            MessageBox.Show("text");
            return true;
        }
        try
        {

            if (count == 1)
            {
                MessageBox.Show("Text");
                return true;
            }
            else
            {
                return false;
            }


        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }


     private void Button_Click(object sender, EventArgs e) 
    {
       bool result1 = functionOne();
       bool result2 = functionTwo();
       if (result1|| result2) functionThree();
    }

我应该在函数1和函数2的末尾添加什么,而不是返回值;这样我就可以完全跳过FunctionThree?

1 个答案:

答案 0 :(得分:1)

更改前两个函数以返回布尔结果,以便您可以执行以下操作:

private void Button_Click(object sender, EventArgs e) 
{
   bool result1 = FunctionOne()
   bool result2 = FunctionTwo()
   if (result1 || result2) FunctionThree()
}

如何修改FunctionOneFunctionTwo的示例:

private bool FunctionOne()
{
    if (MessageBox.Show("Something One?", "Caption", MessageBoxButtons.YesNo) == DialogResult.Yes)
    {
        return true;
    }
    else
    {
        return false;
    }
}