如下图所示,我想在标签靠左侧显示时,文字是水平显示(图中是垂直显示),如何实现啊?

解决方案 »

  1.   

    貌似没法实现,这个问题困扰我很久了。
    第三方控件dotnetbar的TabControl大多数样式也存在这个问题,只有一个样式可以水平显示
    关注中
      

  2.   

    tabControl1.Alignment = System.Windows.Forms.TabAlignment.Left;
      

  3.   

            public Form12()
            {
                InitializeComponent();
                this.tabControl1.DrawItem += new DrawItemEventHandler(tabControl1_DrawItem);
                this.tabControl1.DrawMode = System.Windows.Forms.TabDrawMode.OwnerDrawFixed;
                this.tabControl1.Alignment = System.Windows.Forms.TabAlignment.Left;
            }        void tabControl1_DrawItem(object sender, DrawItemEventArgs e)
            { 
                if(this.tabControl1.DrawMode != TabDrawMode.OwnerDrawFixed)
                    return;
                string str = tabControl1.TabPages[e.Index].Text;
                Brush backBrush;
                Brush foreBrush;            if (e.State == DrawItemState.Selected)
                {
                    backBrush = new SolidBrush(Color.White);
                    foreBrush = new SolidBrush(Color.Black);
                    
                    e.DrawFocusRectangle();
                }
                else
                {
                    backBrush = new SolidBrush(e.BackColor);
                    foreBrush = new SolidBrush(e.ForeColor);
                }
              e.Graphics.FillRectangle(backBrush, e.Bounds);
              if (str != "")
                e.Graphics.DrawString(str, this.tabControl1.Font, foreBrush, e.Bounds);
              backBrush.Dispose();
              foreBrush.Dispose();
            }
      

  4.   

    谢谢楼上,图上的tabcontrol上的文字是垂直显示的啊,我不想要这种效果,想要水平的。