日期:2014-05-18  浏览次数:21010 次

C# winform 如何把panel设置成类似groupBox那样的边框
想要groupBox那样的边框效果,但是groupBox的text为空时上面有一块是空,dock属性填充时不美观,所以想用panel实现,不知如何做出类似groupBox的边框效果,如何重画?最好能提供个代码。

------解决方案--------------------
假设 Panel 实例为 panel1 ,注册 Paint 事件,方法为
C# code
private void panel1_Paint(object sender, PaintEventArgs e)
{
    e.Graphics.DrawRectangle(Pens.Black, new Rectangle(2, 2, panel1.Width - 5, panel1.Height - 5));
}

------解决方案--------------------
将panel的borderStyle属性改下就有边框了,边框是黑色的,,如果不想是黑色就照楼上的做,改下颜色
private void panel1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawRectangle(Pens.LightGreen, new Rectangle(2, 2, panel1.Width - 5, panel1.Height - 5));
}