c#教程:winform程序动态增加Tab选项卡,并给tabpage绘制关闭按钮,实现关闭功能
工具/原料
电脑
vs2010
方法/步骤
1、打开vs2010开发工具,新建一个工程项楫默礤鲼目,在默认打开的Form1窗体上,拖放一个TreeView控件,用于显示树节点;拖放一邗锒凳审个TabControl控件,用来给其TabPage选项卡绘制关闭按钮。这里演示Demo将窗体重命名为【FrmTabContrlSelect】,属性Text值为【c#动态增加和关闭选项卡】;TabControl控件name属性值修改为【MainTabControl】,窗体布局如图所示。
2、窗体布局做好后,切换到FrmTabContrlSelect.cs功能代码页,添加蜣贺鱿柢代码。首先自定义一个【tabControl1_DrawItem】方法。在方法中添加绘制“淌捌釜集X”关闭符合的代码。先添加TabPage属性,然后画一个矩形框,再填充矩形框,最后画关闭符号,具体代码如图所示。
3、自定义【tabControl1_MouseDown】方法,实现鼠标点击“X”符号关闭选项卡,计算关闭区域,如果鼠标在区域内点击,就关闭选项卡,具体代码如图所示。
4、定义一个布尔类型的【ErgodicModiForm】方法,遍历选项卡判断是否存在该子窗体,具体代码如图所示。
5、选择treeView龀音孵茧1,为【AfterSelect】事件,添加实现代码。点击TreeView控件的子号俗劭蜾节点一【选项卡一】,打开TabControl控件的【选项卡一】页面,点击子节点二【选项卡二】,打开【选项卡二】页面,同时检测是否已打开该页面,具体代码如图所示,
6、初始化窗体第一次加载Load事件。初始化TreeView控件,将自定义的【tabControl1_DrawItem】方法和【tabControl1_MouseDown】方法加载到【MainTabControl】控件中。
7、查看运行效果。在左边TreeView中点击选项卡一节点,右边TabControl控件打开选项卡一页面,点击选项卡二节点,打开选项卡二页面。