可视 C# 更改选项卡标题颜色
本文关键字:标题 颜色 选项 可视 | 更新日期: 2023-09-27 18:35:55
我按照这个解决方案设置标签页标题颜色来更改选项卡标题的颜色。但是,这会在选项卡控件中所有选项卡的选项卡标题上设置相同的颜色。你能帮我只更改所选选项卡标题的颜色吗?非常感谢这里的任何帮助。谢谢
DrawItemEventArgs e
参数将告诉您所需的一切。
要绘制各种颜色的标题,请将Brushes.Black
替换为myBrush
,并将DrawString
放在 using 子句中,如下所示:
using (SolidBrush myBrush = new SolidBrush (tabControl1.TabPages[e.Index].ForeColor))
{
e.Graphics.DrawString(tabControl1.TabPages[e.Index].Text, e.Font, myBrush ,
e.Bounds.Left + (e.Bounds.Width - sz.Width) / 2,
e.Bounds.Top + (e.Bounds.Height - sz.Height) / 2 + 1);
}
现在,每个标题都将在其TabPage
的ForeColor
中绘制。
用TextRenderer.DrawText
替换DrawString
会更好!
如果您只想更改所选选项卡的颜色,只需使用如下所示的检查:
SolidBrush myBrush = new SolidBrush (e.State.HasFlag(DrawItemState.Selected) ?
SystemColors.ActiveCaptionText : SystemColors.ControlText)