C# Winform TabControl 双击关闭TabPage
在使用TabControl控件时,需要考虑自动创建的TabPage页实现——关闭功能
思路一:自定义TabControl控件,添加关闭按钮
思路二:TabControl控件TabPage显示ToolTip属性(例如双击关闭)
此处,解释思路二,实现方式
操作步骤:
第一步:TabControl添加多个TabPage页,ShowToolTip=true;
第二步:TabPage,ToolTipText="双击关闭页签";
第三步:实现双击事件MouseDoubleClick,如下所示:
1 2 3 4 5 6 | private void tabControl1_MouseDoubleClick( object sender, MouseEventArgs e) { //TabPage page = sender as TabPage; //this.tabControl1.TabPages.Remove(page); tabControl1.TabPages.RemoveAt(tabControl1.SelectedIndex); } |
动态添加TabPage参考如下
AddTabPage("DirectRegisterForm", "登记中心");
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | private void AddTabPage( string formName, string formText) { TabPage page = this .tabContent.TabPages[formName]; if (page != null ) { tabContent.SelectedTab = page; page.Select(); return ; } TabPage tab = new TabPage(); tab.Name = formName; tab.Text = formText; Form form = GetForm(formName); form.TopLevel = false ; form.FormBorderStyle = FormBorderStyle.None; form.Dock = DockStyle.Fill; tab.Controls.Add(form); tabContent.TabPages.Add(tab); tabContent.SelectedTab = tab; form.Show(); } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | private Form GetForm( object itemName) { try { this .Cursor = Cursors.WaitCursor; Assembly assembly = Assembly.GetExecutingAssembly(); var path = "ZB.QueueSys.View." + itemName.ToString(); Form form = assembly.CreateInstance(path) as Form; return form; } catch { return null ; } finally { this .Cursor = Cursors.Default; } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!