在一个form中有多个Panel,如何给鼠标点击的panel添加边框,且在鼠标再点击另一个panel的时候原来的panel边框消失,麻烦个位指点一下,谢谢~!!!

解决方案 »

  1.   

    http://topic.csdn.net/u/20080411/16/2e20737f-033e-4535-b82c-f0a17ccbbe9e.html
      

  2.   

            private void panel1_MouseEnter(object sender, EventArgs e)
            {
                panel1.BorderStyle = BorderStyle.FixedSingle ;
            }        private void panel1_MouseLeave(object sender, EventArgs e)
            {
                panel1.BorderStyle = BorderStyle.None;
            }
      

  3.   

    private Panel lastPanel = null;
    private void Panel_Click(object sender,...)
    {
    if (null=!lastPanel)
    {
    //取消上次panel的边框
    panel.Border = BorderStyle.None;
    }
    lastPanel = sender as Panel;
    panel.Border = BorderStyle.Fixed3D;
    }
      

  4.   

    private void panel_MouseEnter(object sender, EventArgs e)
            {
                Panel p=sender as Panel;
                foreach(Control c in this.Controls)
                 {
                  if(c is Panel) 
                  { if(c.Name.Equals(p.Name))panel.BorderStyle= BorderStyle.FixedSingle;}
                }        }
      

  5.   

    Graphics.DrawRectangle(new Pen(new SolidBrush(this.lineColor), 6), 0, 0, this.Control.Size.Width, this.Control.Size.Height) 
      

  6.   

      遍历所有的Panel      判断点击的就添加边框,其他的取消.
      

  7.   

    呵呵,Panel上面再套个分组嘛、