我有一个面板 System.Windows.Forms.Panel
有属性
BorderStyle="FixedSingle"
它呈现灰色边框。
我需要:
能够设置边框的颜色和粗细(如果可能)。
我很想知道是否也可以完全隐藏边框。
知道如何解决这个问题吗?
我的控制代码:
OptimizedPanel : Panel
<WindowsFormsHost Name="WinFormsHost">
<wh:OptimizedPanel x:Name="RenderingPanel"
BorderStyle="None" />
</WindowsFormsHost>
最佳答案
Windows.Forms.Form.Panel 控件不支持边框颜色。所以,你不能直接设置边框颜色。但是您可以使用图形对象绘制自己的边框。
private void pnlPanel_Paint(object sender, PaintEventArgs e)
{
Rectangle r = new Rectangle(0, 0, this.ClientRectangle.Width - 1, this.ClientRectangle.Height - 1);
Pen p = new Pen(Color.Blue, 2);
e.Graphics.DrawRectangle(p, r);
}
不要忘记将 BorderStyle
属性设置为 None
pnlPanel.BorderStyle = BorderStyle.None;
关于c# - 如何更改面板的 BorderStyle?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22192218/