C# TabConTrol控件背景颜色

转载 2016年06月01日 09:22:19
C# TabConTrol控件背景颜色问题
2011-11-13      0 个评论      
收藏    我要投稿

大家肯定都遇到过这样的问题,在做WinForm项目的时候,需要对窗体和控件进行美化,而使用第三方控件的话也没有什么免费的,这时就需要自己VS 自带的美化样式进行美化,而当美化到TabControl控件时,难题来了:

 

\

属性中,并没有直接设置控件的BackImage属性,没办法设置主控件的背景。

以下我给大家提供一个简单的方法(本人不是专业做美工的,并没有多少美化功底,具体的颜色搭配,自己看着办把!呵呵)

第一步:

       设置TabControl控件(名称以tclDemo为例)的DrawMode属性为:OwnerDrawFixed;用于指定由用户来绘制标题

 

\

第二步:注册TabControl控件的DrawItem事件:

 

\

第三步:

 

 

private void tclDemo_DrawItem(object sender, DrawItemEventArgs e)

 

{

 

            //获取TabControl主控件的工作区域

 

            Rectangle rec = tclDemo.ClientRectangle;

 

 

 

            //获取背景图片,我的背景图片在项目资源文件中。

 

            Image backImage = Resources.枫叶;

 

 

 

            //新建一个StringFormat对象,用于对标签文字的布局设置

 

            StringFormat StrFormat = new StringFormat();

 

            StrFormat.LineAlignment = StringAlignment.Center;// 设置文字垂直方向居中

 

            StrFormat.Alignment = StringAlignment.Center;// 设置文字水平方向居中          

 

            // 标签背景填充颜色,也可以是图片

 

    SolidBrush bru = new SolidBrush(Color.FromArgb(72, 181, 250));

 

            SolidBrush bruFont = new SolidBrush(Color.FromArgb(217, 54, 26));// 标签字体颜色

 

            Font font = new System.Drawing.Font("微软雅黑",12F);//设置标签字体样式

 

 

 

            //绘制主控件的背景

 

            e.Graphics.DrawImage(backImage, 0, 0, tclDemo.Width, tclDemo.Height);

 

            //绘制标签样式

 

            for (int i = 0; i < tclDemo.TabPages.Count; i++)

 

            {

 

                //获取标签头的工作区域

 

                Rectangle recChild = tclDemo.GetTabRect(i);

 

                //绘制标签头背景颜色

 

                e.Graphics.FillRectangle(bru, recChild);

 

                //绘制标签头的文字

 

                e.Graphics.DrawString(tclDemo.TabPages[i].Text,font,bruFont,recChild,StrFormat);

 

            }

 

}

 

 

 

 

来看看效果吧!

 

\

只是为了给大家演示以一个简单的方法设置TabControl控件的样式,颜色搭配,就交给美工了!!!

c#重写TabControl控件实现关闭按钮

1.c#里面的TabControl控件没有关闭按钮,而且很难看。 2.有一些已经做好的第三方控件,但是收费。 3.由于我的故障树推理诊断项目在绘图的时候允许同时打开多个文档进行操作,就要实现类似于...
  • fuxingwe
  • fuxingwe
  • 2013年03月31日 12:54
  • 20600

c#TabControl控件左边选项卡左边显示,文字横向显示

c#TabControl控件左边选项卡左边显示,文字横向显示 2015-12-17 10:50 259人阅读 评论(0) 收藏 举报  分类: c#开发(6)  ...

C#仿QQ皮肤-TabControl控件实现

导读部分 ----------------------------------------------------------------------------------------------...
  • az44yao
  • az44yao
  • 2014年09月05日 11:26
  • 1682

C#窗体TabControl控件美化版源代码

  • 2012年04月17日 19:16
  • 137KB
  • 下载

VB.net对于datagride控件的使用及C#中datagrideView\bindingSource\bindingNavigator\tabcontrol控件的应用

//绑定数据源                 DataSet ds = new DataSet();                 SqlConnection connection = new...
  • angxiao
  • angxiao
  • 2012年05月24日 19:14
  • 1678

C# TabControl控件美化

  • 2012年02月29日 20:20
  • 340KB
  • 下载

C#学习笔记:设置label(标签)控件的背景颜色为透明

有时候,我们需要将控件的背景颜色设定为透明,比如说label(标签)控件。那么,如何将控件的背景颜色设定为透明?是不是只要将控件的BackColor属性设为Transparent(透明)就可以了呢?答...

CListCtrl控件背景颜色网格色彩

  • 2016年04月01日 11:15
  • 49.83MB
  • 下载

自定义TabControl控件模版样式

示例操作:      上面介绍的几点是我觉得Blend入门应该知道的最基本的东西,当然不能写的太详细,需要你去操作体会实践,我也不可能写出所有细节,每一个操作都还有一些更细的东西和功能,可以自己去摸...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# TabConTrol控件背景颜色
举报原因:
原因补充:

(最多只允许输入30个字)