如何设置c# tabControl控件,使其变成图中所示的效果

如图,tab都在左侧,而且上下分布,tab按钮中的字体左右分布,每个tab对应的窗体在右侧... 如图,tab都在左侧,而且上下分布,tab按钮中的字体左右分布,每个tab对应的窗体在右侧 展开
 我来答
百度网友ce7f3ccb4
推荐于2017-12-16 · TA获得超过1950个赞
知道大有可为答主
回答量:2299
采纳率:0%
帮助的人:1909万
展开全部

大刀这个效果需要有2部:

第一步:设置Alignment=left

              设置DrowMode=OwnerDrawFixed

              设置ItemSize=30,100

              设置SizeMode=Fixed

第二部:重绘,实现tabcontrol控件的tabControl1_DrawItem事件,如下所示

 private void tabControl1_DrawItem(object sender, DrawItemEventArgs e)

        {

            string text=((TabControl)sender).TabPages[e.Index].Text;

            SolidBrush brush=new SolidBrush(Color.Black);

           StringFormat sf = new StringFormat(StringFormatFlags.DirectionRightToLeft);

           sf.LineAlignment = StringAlignment.Center;

           sf.Alignment = StringAlignment.Center;

           e.Graphics.DrawString(text, SystemInformation.MenuFont,brush, e.Bounds, sf);

        }

我只写了个简单的例子,仅供参考,如果需要更炫的效果,需要更复杂的重绘,请百度查资料,望采纳!

效果如图:

另外,还有一种方法去实现,我们可以隐藏选项卡,在保持以上设置的前提下,

设置ItemSize=1,1 ,就可以隐藏选项卡了,然后添加一个listbox,在listbox的SelectedIndexChanged事件中填入

tabControl1.SelectedIndex = listBox2.SelectedIndex;

,效果和你提问的图片一模一样。

如图:

阳光的雷咩咩
2015-03-17 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7835万
展开全部
这是ListBox而已。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式