winform美化控件tabcontrol,使tabpage的标签页边缘变成圆角
时间: 2023-12-14 22:21:11 浏览: 328
TabControl控件的美化
要实现Winform中TabControl控件tabpage标签页边缘变成圆角的效果,可以通过以下步骤:
1. 找到TabControl控件的Paint事件,添加以下代码:
```csharp
private void tabControl1_Paint(object sender, PaintEventArgs e)
{
// 设置TabControl控件的Region属性
System.Drawing.Drawing2D.GraphicsPath path = new System.Drawing.Drawing2D.GraphicsPath();
Rectangle rect = tabControl1.ClientRectangle;
rect.Inflate(0, 10);
path.AddRoundRect(rect, 10, 10);
tabControl1.Region = new Region(path);
}
```
2. 添加一个自定义控件类,继承自TabControl,重写OnResize方法,添加以下代码:
```csharp
protected override void OnResize(EventArgs e)
{
base.OnResize(e);
this.Invalidate();
}
```
3. 在窗体中使用自定义控件类,即可实现TabControl控件tabpage标签页边缘变成圆角的效果。
需要注意的是,上述代码中使用了一个自定义的GraphicsPath类,在AddRoundRect方法中设置了圆角大小,可以根据需要进行调整。
阅读全文