Visual C#无法更改picturebox。单击即可更改图像

Visual C#无法更改picturebox。单击即可更改图像,c#,visual-studio-2010,if-statement,picturebox,C#,Visual Studio 2010,If Statement,Picturebox,我在Visual Studio 2010(在Visual C#上)的一个应用程序上有一个picturebox 默认情况下,picturebox具有图像。我希望用户能够单击它,它将更改为另一个图像,然后如果他再次单击它,picturebox.Image将更改回第一个图像,等等 private void pictureBox1_Click(object sender, EventArgs e) { if (pictureBox1.Image == Windo

我在Visual Studio 2010(在Visual C#上)的一个应用程序上有一个picturebox

默认情况下,picturebox具有图像。我希望用户能够单击它,它将更改为另一个图像,然后如果他再次单击它,picturebox.Image将更改回第一个图像,等等

 private void pictureBox1_Click(object sender, EventArgs e)
        {
            if (pictureBox1.Image == WindowsFormsApplication2.Properties.Resources.English_flag)
            {
                pictureBox1.Image = WindowsFormsApplication2.Properties.Resources.Greek_flag;
            }
            else
            {
                pictureBox1.Image = WindowsFormsApplication2.Properties.Resources.English_flag;
            }
        }
这就是我所拥有的,但它不起作用。我知道我的if语句有问题,但我不知道是什么


编辑:第一个图像出现在我的表单上,但当我单击它时,它不会更改为第二个图像。

您应该尝试使用一个布尔标志,每次单击时都可以切换该标志

bool flag = true;
private void pictureBox1_Click(object sender, EventArgs e)
    {
            pictureBox1.Image = flag ? WindowsFormsApplication2.Properties.Resources.Greek_flag 
                                     : WindowsFormsApplication2.Properties.Resources.English_flag;
        flag = !flag;

    }

您应该尝试使用一个布尔标志,在每次单击时切换该标志

bool flag = true;
private void pictureBox1_Click(object sender, EventArgs e)
    {
            pictureBox1.Image = flag ? WindowsFormsApplication2.Properties.Resources.Greek_flag 
                                     : WindowsFormsApplication2.Properties.Resources.English_flag;
        flag = !flag;

    }

您应该尝试使用一个布尔标志,在每次单击时切换该标志

bool flag = true;
private void pictureBox1_Click(object sender, EventArgs e)
    {
            pictureBox1.Image = flag ? WindowsFormsApplication2.Properties.Resources.Greek_flag 
                                     : WindowsFormsApplication2.Properties.Resources.English_flag;
        flag = !flag;

    }

您应该尝试使用一个布尔标志,在每次单击时切换该标志

bool flag = true;
private void pictureBox1_Click(object sender, EventArgs e)
    {
            pictureBox1.Image = flag ? WindowsFormsApplication2.Properties.Resources.Greek_flag 
                                     : WindowsFormsApplication2.Properties.Resources.English_flag;
        flag = !flag;

    }

我能用这个叫程序吗?比如,如果我想在用户每次单击图像时更改更多内容。@Shevliaskovic是的,你可以,你希望我将其添加到答案中吗?是的,如果你愿意,我的意思是如果你可以调用另一个函数。我可以用这个调用一个过程吗?比如,如果我想在用户每次单击图像时更改更多内容。@Shevliaskovic是的,你可以,你希望我将其添加到答案中吗?是的,如果你愿意,我的意思是如果你可以调用另一个函数。我可以用这个调用一个过程吗?比如,如果我想在用户每次单击图像时更改更多内容。@Shevliaskovic是的,你可以,你希望我将其添加到答案中吗?是的,如果你愿意,我的意思是如果你可以调用另一个函数。我可以用这个调用一个过程吗?例如,如果每次用户单击图像时我都想更改更多内容。@Shevliaskovic是的,你可以,你希望我将其添加到回答中吗?是的,如果你愿意,我的意思是如果你可以调用另一个函数。