带有实线边框的C#winforms按钮,如3d
如何创建带有实心边框(3d)的按钮,如下图C#winforms?
Panel BorderStyle
可以设置为Fixed3D
,但BorderStyle
按钮不能设置为Fixed3D
。
我也尝试过平面风格的FlatAppearance
。
您可以通过这种方式自定义Button
控件具有厚3D边框:
- 将Button
FlatStyle
设置为Flat
- 在
FlatApperanace
设置为0
- 在
FlatApperanace
中将MouseOverBackColor
设置为ControlLight
然后处理Paint
事件并使用ControlPaint.DrawBorder
绘制一个粗三维边框:
private void button1_Paint(object sender, PaintEventArgs e) { ControlPaint.DrawBorder(e.Graphics, button1.ClientRectangle, SystemColors.ControlLightLight, 5, ButtonBorderStyle.Outset, SystemColors.ControlLightLight, 5, ButtonBorderStyle.Outset, SystemColors.ControlLightLight, 5, ButtonBorderStyle.Outset, SystemColors.ControlLightLight, 5, ButtonBorderStyle.Outset); }
这是结果: