LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

C#实现TabControl选项卡竖着排列,控件文字横向显示,被选中的卡片背景色和字体颜色不同(最详细)

admin
2021年2月18日 21:25 本文热度 3934
新建一个tabControl,名字为tabControl1,选中并修改其以下属性:
1、DrowMode=OwnerDrawFixed //
2、Alignment=left //选项卡向左靠齐
3、SizeMode=Fixed //设置此项后,设置ItemSize使表格更美观
4、ItemSize=30,100 //选项卡内的控件大小
5、增加:using System.Drawing;

在此控件的DrawItem事件中加入以下代码:
private void tabControl1_DrawItem(object sender, DrawItemEventArgs e)
{
    string text = ((TabControl)sender).TabPages[e.Index].Text;
    //标签背景填充颜色
    SolidBrush BackBrush = new SolidBrush(Color.Transparent);
    //被激活标签背景填充颜色
    SolidBrush BackBrush_active = new SolidBrush(Color.Yellow);
    //标签文字填充颜色
    SolidBrush FrontBrush = new SolidBrush(Color.Black);
    //被激活标签文字填充颜色
    SolidBrush FrontBrush_active = new SolidBrush(Color.Red);
    //设置文字对齐方式
    StringFormat sf = new StringFormat(StringFormatFlags.DirectionRightToLeft);
    sf.LineAlignment = StringAlignment.Center;
    sf.Alignment = StringAlignment.Center;
    e.Graphics.DrawString(text, new Font("宋体", 10), FrontBrush, e.Bounds, sf);
    for (int i = 0; i < tab_main.TabPages.Count; i++)
    {
        //获取标签头工作区域
        Rectangle Rec = tab_main.GetTabRect(i);
        //绘制标签头背景颜色
        e.Graphics.FillRectangle(BackBrush, Rec);
    }
    if (e.Index == this.tab_main.SelectedIndex)
    {
        //获取标签头工作区域
        Rectangle Rec = tab_main.GetTabRect(e.Index);
        //绘制标签头背景颜色
        e.Graphics.FillRectangle(BackBrush_active, Rec);
        //绘制标签头字体颜色
        e.Graphics.DrawString(text, new Font("宋体", 10), FrontBrush_active, e.Bounds, sf);
    }
}

选中tabControl1,在属性栏单击事件,选择DrawItem点击后边的下拉菜单,将其事件设置为tabControl1_DrawItem,如下图:


此时打开工程目录并不显示,运行即可看到效果:


注意事项:
选项卡控件的格式需要自己去写在DrawItemEventHandler的Font里。

该文章在 2021/2/18 22:21:05 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved