c#选项卡控件怎么实现这个效果

木头人@123 2018-06-16 01:07:44
各位大神帮我看看这个怎么实现
...全文
1430 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
昨天忆 2018-06-20
  • 打赏
  • 举报
回复
添加DrawItem方法
private void tabControl1_DrawItem(object sender, DrawItemEventArgs e)
{
Rectangle tabArea = tabControl1.GetTabRect(e.Index);//主要是做个转换来获得TAB项的RECTANGELF
RectangleF tabTextArea = (RectangleF)(tabControl1.GetTabRect(e.Index));
Graphics g = e.Graphics;
StringFormat sf = new StringFormat();//封装文本布局信息
sf.LineAlignment = StringAlignment.Center;
sf.Alignment = StringAlignment.Center;
Font font = this.tabControl1.Font;
SolidBrush brush = new SolidBrush(Color.Black);//绘制边框的画笔
g.DrawString(((TabControl)(sender)).TabPages[e.Index].Text, font, brush, tabTextArea, sf);
}
昨天忆 2018-06-20
  • 打赏
  • 举报
回复
用TabControl,
tabControl1.DrawMode = TabDrawMode.OwnerDrawFixed;
tabControl1.Alignment = TabAlignment.Left;
tabControl1.SizeMode = TabSizeMode.Fixed;
tabControl1.Multiline = true;
tabControl1.ItemSize = new Size(50, 100);
  • 打赏
  • 举报
回复
使用控件如果过“多”的话是个坑,丧失了自己的(现代感、平面、创意的)界面设计能力是 winform 开发的人经常遇到的现象。我们开发时强调尽量少用控件堆砌,尤其是不能用第三方的不开源的控件
  • 打赏
  • 举报
回复
基本上写代码也就是3、4行的事情。不要因为懒得自己写代码而去放弃自己进行界面设计。
  • 打赏
  • 举报
回复
比如说,标签页的编号设计为一个属性,在标签页改变事件发生时,比如说当前选中标签页编号为4,那么就把第4个位置的这个白色的图片设置为可见,其它的设置为不可见,就行了。对于右边的Panel 也是一样,当标签页是4,那么就把 Panel 集合中相应下标的 Panel 设置为可见。
takpod 2018-06-17
  • 打赏
  • 举报
回复
自己搞很麻烦的,下载第三方插件来搞
threenewbee 2018-06-16
  • 打赏
  • 举报
回复
picturebox+label贴图就可以了。
  • 打赏
  • 举报
回复
或许可以下载一个第三方界面库,省事很多额。
泉水叮咚888 2018-06-16
  • 打赏
  • 举报
回复
这种交果需要用第三方控件的,DEVEXPRESS,可去网上下的试试。
木头人@123 2018-06-16
  • 打赏
  • 举报
回复
我想用选项卡控件实现,能不能给我写一个大致内容

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧