C#實現TabControl選項卡豎着排列,控件文字橫向顯示


新建一個tabControl,名字不用修改,選中tabControl1,修改其以下屬性
1、DrowMode=OwnerDrawFixed //
2、Alignment=left //選項卡向左靠齊
3、SizeMode=Fixed //設置此項后,設置ItemSize使表格更美觀
4、ItemSize=60,100 //選項卡內的控件大小

加入以下代碼

//調整選項卡文字方向
private void tabControl1_DrawItem(object sender, DrawItemEventArgs e)
{
SolidBrush _Brush = new SolidBrush(Color.Black);//單色畫刷
RectangleF _TabTextArea = (RectangleF)TabControl1.GetTabRect(e.Index);//繪制區域
StringFormat _sf = new StringFormat();//封裝文本布局格式信息
_sf.LineAlignment = StringAlignment.Center;
_sf.Alignment = StringAlignment.Center;
e.Graphics.DrawString(TabControl1.Controls[e.Index].Text, SystemInformation.MenuFont, _Brush, _TabTextArea,_sf);
}

 

 

選中tabControl1,在屬性欄單擊事件,選擇DrawItem點擊后邊的下拉菜單,將其事件設置為tabControl1_DrawItem如下圖:

 

 

 

此時打開工程目錄並不顯示,運行即可看到效果。

或是在Form.Designer.cs內加入以下代碼(如圖位置)

this.TabControl1.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.tabControl1_DrawItem);

 

 

 

 

運行即可查看效果
注意事項:選項卡控件的格式需要自己去寫在DrawItemEventHandler的Font里。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM