[DevExpress]DevExpress XtraTabControl 加载Form
2016-02-16 16:59
204 查看
代码:
效果:
private void treeList1_DoubleClick(object sender, EventArgs e) { TreeListNode clickedNode = this.treeList1.FocusedNode; // string disPlayText = clickedNode.GetDisplayText("FORMNAME"); string name = clickedNode.GetDisplayText("NAME"); string formname = clickedNode.GetDisplayText("FORMNAME"); if (name != "") //trvMeun.SelectedNode.LastNode == null { //判断是否已创建过 foreach (XtraTabPage page in xtraTabControl.TabPages) { if (page.Text == name) { xtraTabControl.SelectedTabPage = page;//显示该页 return; } } XtraTabPage xpage = new XtraTabPage(); ObjectHandle obj = Activator.CreateInstance(null, formname); //需要带全局项目 //obj.Unwrap返回被包装的对象 if (obj != null) { Form frm = (Form)obj.Unwrap(); frm.Visible = true; frm.Dock = DockStyle.Fill; frm.FormBorderStyle = FormBorderStyle.None; frm.TopLevel = false;//在这里一定要注意 负责是加载不出来的 xpage.Controls.Add(frm);//添加要增加的控件 xpage.Text = name; //添加名称 xtraTabControl.TabPages.Add(xpage); xtraTabControl.SelectedTabPage = xpage;//显示该页 } } } XtraTabPage CurrentPage = new XtraTabPage(); private void xtraTabControl_CloseButtonClick(object sender, EventArgs e) { DevExpress.XtraTab.ViewInfo.ClosePageButtonEventArgs EArg = (DevExpress.XtraTab.ViewInfo.ClosePageButtonEventArgs)e; string name = EArg.Page.Text;//得到关闭的选项卡的text foreach (XtraTabPage page in xtraTabControl.TabPages)//遍历得到和关闭的选项卡一样的Text { if (page.Text == name) { xtraTabControl.TabPages.Remove(page); page.Dispose(); return; } } } private void xtraTabControl_MouseDoubleClick(object sender, MouseEventArgs e) { if (CurrentPage != null) { xtraTabControl.TabPages.Remove(CurrentPage); CurrentPage.Dispose(); } }
效果:
相关文章推荐
- The connection to adb is down, and a severe error has occured.
- 备忘篇——传送中文数据给后台
- 代理模式(一):代理模式概述,代理模式结构与实现
- js工具
- listview精确监听向上向下的滚动
- python爬虫(一)
- python 文本处理(分割)
- 一行盒子 (模拟) 13年湖南省赛题
- cocos2d-x数据简单加密
- contentprovider
- 众数
- Java BigDecimal
- 【monkeyrunner】浅谈包名和activity名
- IOS开发证书变成“此证书的签发者无效”解决方法
- String path = request.getContextPath();获取应用的上下文路径。
- 如何利用JMeter模拟超过 5 万的并发用户
- TDD最佳实践
- TDD最佳实践
- C# 地磅串口编程
- 关于“此证书的签发者无效”的解决方法。