1.c#里面的TabControl控件沒有關閉按鈕,而且很難看。
2.有一些已經做好的第三方控件,但是收費。
3.由于我的故障樹推理診斷項目在繪圖的時候允許同時打開多個文檔進行操作,就要實現類似于瀏覽器的多標簽功能,而且要可以關閉。
4.所以自己寫一個類繼承TabControl類,然后重寫一些里面的方法即可實現。
5.特色:有關閉按鈕,標簽有背景顏色,選中的標簽和沒選中的顏色不一樣,實現鼠標中鍵和右鍵的功能
先看我的項目中的完整代碼,有很多代碼是我的項目需要,可根據你的項目需求刪減,核心的代碼后面詳細解釋:
/// <summary>
/// 重寫的TabControl控件 帶關閉按鈕
/// </summary>
public class MyTabControl : TabControl
{
private int iconWidth = 16;
private int iconHeight = 16;
private Image icon = null;
private Brush biaocolor = Brushes.Silver; //選項卡的背景色
private Form_paint father;//父窗口,即繪圖界面,為的是當選項卡全關后調用父窗口的dispose事件關閉父窗口
private AxMicrosoft.Office.Interop.VisOcx.AxDrawingControl axDrawingControl1;
public MyTabControl(AxMicrosoft.Office.Interop.VisOcx.AxDrawingControl axDrawingControl)
: base()
{
this.axDrawingControl1 = axDrawingControl;
this.ItemSize = new Size(50, 25); //設置選項卡標簽的大小,可改變高
主站蜘蛛池模板:
陆丰市|
民丰县|
武冈市|
吉首市|
沙湾县|
正镶白旗|
页游|
昌邑市|
东辽县|
阜南县|
抚顺县|
莲花县|
安泽县|
镇康县|
闽侯县|
临城县|
泸西县|
漾濞|
安仁县|
重庆市|
甘肃省|
江安县|
太仓市|
神农架林区|
普定县|
琼结县|
永登县|
凌云县|
屏山县|
苍山县|
原阳县|
淅川县|
黄浦区|
辽阳县|
三门峡市|
吐鲁番市|
措美县|
榆林市|
青浦区|
博野县|
鹰潭市|