我在一个win form里, 画了三个panel, 然后通过所选择的菜单项的不同来控制到底显示那个panel, 但是怪事来了, 只有点击第一个菜单项时能画出第一个面板, 此后点击其他菜单项都没反应! 帮帮我看看怎么回事, 谢谢!代码如下:        #region 隐藏所有面板(panel)
        private void SetVisibleAllFalse()
        {
            panel1.Visible = false;
            panel2.Visible = false;
            panel3.Visible = false;
        }
        #endregion        #region 点击菜单项(增加新员工)
        private void 增加新员工ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SetVisibleAllFalse();
            panel1.Visible = true;
        }
        #endregion        #region 点击菜单项(解雇员工)
        private void 解雇员工ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SetVisibleAllFalse();
            panel2.Visible = true;
        }
        #endregion        #region 点击菜单项(调动员工)
        private void 调动员工ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SetVisibleAllFalse();
            panel3.Visible = true;
        }
        #endregion补充说明: 只有增加新员工所对应的panel1能显示, panel2, panel3均不能显示, 这是怎么回事啊? 我是先画的panel1, 但是跟这个有关系吗? 其他几部分的代码完全一样啊. 怎么不能显示呢?

解决方案 »

  1.   

    private int i=0;
    private void button2_Click(object sender, System.EventArgs e)
    {
    if(i%2==0)
    {
    this.panel1.BringToFront();
    i++;
    }
    else
    {
    this.panel2.BringToFront();
    i++;
    }
    }
    这样就行
      

  2.   

    我刚才试了试, 加了BringToFront()怎么还是不行啊?
      

  3.   

    我试了下可以的,你会不会把panel2和panel3放到1里去了?
      

  4.   

    对, 我终于搞定了, 可能我把panel2, 和panel3弄得太小了, 所以就被认为是在panel1中了, 太感谢了!!! 呵呵.