本文主要是介绍WinForm TabControl标签背景色,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
新建窗体程序,命名为”Form6_TabControl“
-
窗口界面如下:
-
将【tabControl】控件的【DrawMode】属性修改为”OwnerDrawFixed“
设计界面变为
-
tabControl控件的事件属性页,添加【DrawItem】事件
-
编辑【DrawItem】事件
//初始化tabcontrol选项页颜色private void tabControl1_DrawItem(object sender, DrawItemEventArgs e){//设置笔刷SolidBrush yellow = new SolidBrush(Color.Yellow);SolidBrush orange = new SolidBrush(Color.Orange);SolidBrush green = new SolidBrush(Color.Green);SolidBrush black = new SolidBrush(Color.Black);//设置标签文字水平垂直居中StringFormat stringFormat = new StringFormat();stringFormat.Alignment = StringAlignment.Center; //水平方向居中stringFormat.LineAlignment = StringAlignment.Center; //垂直方向居中 //逐个绘制各个标签页的背景颜色,包括黄色、蓝色、绿色等//绘制黄色背景Rectangle rec1 = tabControl1.GetTabRect(0);e.Graphics.FillRectangle(yellow, rec1);//MessageBox.Show("显示黄色标签");//绘制蓝色背景Rectangle rec2 = tabControl1.GetTabRect(1);e.Graphics.FillRectangle(orange, rec2);//MessageBox.Show("显示蓝色标签");//绘制绿色背景Rectangle rec3 = tabControl1.GetTabRect(2);e.Graphics.FillRectangle(green, rec3);//MessageBox.Show("显示绿色标签");//设置文字颜色for(int i = 0; i < tabControl1.TabPages.Count; i++){Rectangle rec = tabControl1.GetTabRect(i);//设置标签文字字体和文字大小e.Graphics.DrawString(tabControl1.TabPages[i].Text,new Font("宋体", 9), black, rec, stringFormat);}}
运行代码结果
注:程序运行时将字体由宋体改为了楷体
这篇关于WinForm TabControl标签背景色的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!