winforms 点击功能不工作两次为什么?[关闭]

g2ieeal7  于 2023-03-09  发布在  其他
关注(0)|答案(1)|浏览(158)

这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
2小时前关门了。
Improve this question

private void toolStripButton7_Click(object sender, EventArgs e)
{
    if(panel1.Visible = false)
    {
        panel1.Visible = true;
    }
    if (panel1.Visible = true)
    {
        panel1.Visible=false;
    }
}

我有这段代码,它的作用是改变WinForms中面板的可见属性,但它只工作一次,然后,它再也不工作了,直到我重新启动我的程序。
我第一次尝试添加一个else而不是两个单独的if,但这并没有解决我的问题,面板在使其不可见后没有显示。

u5i3ibmn

u5i3ibmn1#

为什么不直接切换可见性状态呢?

private void toolStripButton7_Click(object sender, EventArgs e)
{
   panel1.Visible = !panel1.Visible;
}

“修复”你的原始代码...在if语句表达式中,应该有两个等号,这样你就可以检查是否相等。你现在正在那里做一个赋值。你也不需要第二个if检查,只需要使用一个else块。

private void toolStripButton7_Click(object sender, EventArgs e)
{
   if (panel1.Visible == false)
    {
        panel1.Visible = true;
    }
    else
    {
        panel1.Visible = false;
    }
}

相关问题