private void Frm_Mode_Load(object sender, EventArgs e) 
...{
Tab01.DrawMode = TabDrawMode.OwnerDrawFixed;//设置用户绘制方式
} 
绘制TAB字体#region 绘制TAB字体
private void Tab01_DrawItem(object sender, DrawItemEventArgs e) 
...{
Rectangle tabArea = Tab01.GetTabRect(e.Index);//主要是做个转换来获得TAB项的RECTANGELF
RectangleF tabTextArea = (RectangleF)(Tab01.GetTabRect(e.Index));
Graphics g = e.Graphics;
StringFormat sf = new StringFormat();//封装文本布局信息
sf.LineAlignment = StringAlignment.Center;
sf.Alignment = StringAlignment.Center;
Font font = this.Tab01.Font;
SolidBrush brush = new SolidBrush(Color.Black);//绘制边框的画笔
g.DrawString(((TabControl)(sender)).TabPages[e.Index].Text, font, brush, tabTextArea, sf);
}
#endregion
本文介绍了一种使用C#自定义TabControl控件中Tab页显示样式的方法,通过OwnerDraw方式实现对字体、颜色等外观的精确控制。

1330

被折叠的 条评论
为什么被折叠?



