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

问题描述 投票:0回答:1

我有一个按钮。一个按钮有三个功能,我想在有一个或两个功能的情况下跳过最后一个功能。

我试过回来;但没什么。或者它会禁用所有内容,或者仍在执行其操作

这是一个例子:

     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();
    }

我应该在最后添加到第一和第二功能而不是返回;这样我就可以跳过FunctionThree了?

c# function skip
1个回答
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;
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.