87,987
社区成员
发帖
与我相关
我的任务
分享
protected override void OnDrawItem(DrawItemEventArgs e)
{
TabPage tabPage = this.TabPages[e.Index];
tabPage.UseVisualStyleBackColor = true;
Graphics g = e.Graphics;
Brush backtabcontrol;//整个tab控件背景色
Brush backbrush;//标签页背景色
Brush textBrush;//标签字体颜色
Font tabFont;//标签字体
if (e.State == DrawItemState.Selected)
{
textBrush = new SolidBrush(Color.FromArgb(255, 29, 168, 255));
}
else
{
textBrush = new SolidBrush(e.ForeColor);
}
//绘制整个tab控件背景
backtabcontrol = new SolidBrush(Color.FromArgb(255, 252, 252, 252));
g.FillRectangle(backtabcontrol, this.ClientRectangle.X, this.ClientRectangle.Y, this.ClientRectangle.Size.Width, this.ClientRectangle.Height);
//绘制激活标签页标题区域的背景
//tabPage.BackColor =Color.FromArgb(255, 250, 250, 250);
Rectangle backrect = this.GetTabRect(e.Index);//标签页区域
backbrush = new SolidBrush(Color.FromArgb(255, 250, 250, 250));
g.FillRectangle(backbrush, backrect);
//绘制标签标题字体
tabFont = new Font("微软雅黑", 13, FontStyle.Bold, GraphicsUnit.Pixel);
StringFormat strFlags = new StringFormat(StringFormatFlags.DisplayFormatControl);
strFlags.Alignment = StringAlignment.Center;
strFlags.LineAlignment = StringAlignment.Center;
g.DrawString(tabPage.Text, tabFont, textBrush, backrect, strFlags);
tabPage.ToolTipText = tabPage.Text;
backtabcontrol.Dispose();
backbrush.Dispose();
tabFont.Dispose();
textBrush.Dispose();
base.OnDrawItem(e);
}