/// <summary>
/// 动态 显示 tab
/// </summary>
/// <param name="sFromName">类名</param>
private void showTab(string sClassName, string MethodName, string sPRODUCTCOMPID)
{
string sFuncName = "showTab";
try
{
bool IsOpened = false;
string sSolutionName = Application.CompanyName;//命名空间 //System.Reflection.Assembly ass = Assembly.Load(sSolutionName);
//System.Windows.Forms.Form form = (System.Windows.Forms.Form)ass.CreateInstance(sSolutionName + "." + sClassName); // 1.Load(命名空间名称),GetType(命名空间.类名)
Type type = Assembly.Load(sSolutionName).GetType(sSolutionName + "." + sClassName); // 2.GetMethod(需要调用的方法名称)
MethodInfo method = type.GetMethod(MethodName); // 3.调用的实例化方法(非静态方法)需要创建类型的一个实例
object obj = Activator.CreateInstance(type);
System.Windows.Forms.Form form = obj as System.Windows.Forms.Form;
//// 4.方法需要传入的参数
//object[] parameters = new object[] { sPRODUCTCOMPID }; //// 5.调用方法,如果调用的是一个静态方法,就不需要第3步(创建类型的实例)
//// 相应地调用静态方法时,Invoke的第一个参数为null
//method.Invoke(obj, parameters); #region
foreach (SuperTabItem item in superTabControl.Tabs)
{
//已打开
if (item.Name == sClassName)
{
superTabControl.SelectedTab = item;
IsOpened = true;
break;
}
}
if (!IsOpened)
{
if (form != null)
{
form.TopLevel = false;//设置为非顶级控件 否则会报错 SuperTabItem tab = superTabControl.CreateTab("tabText");// new SuperTabItem();
//TAB.ContainerControl = from;
tab.Name = sClassName;
tab.Text = form.Text;
tab.FixedTabSize = new Size(120, 0);
tab.AttachedControl.Controls.Add(form);
tab.CloseButtonVisible = true;
superTabControl.Tabs.Add(tab);
this.superTabControl.SelectedTab = tab;
form.FormBorderStyle = FormBorderStyle.None;
form.Visible = true;
form.WindowState = FormWindowState.Maximized;
form.Dock = DockStyle.Fill;
form.ShowInTaskbar = false;
form.Show();//必须写在最后,不然显示不了
} } #endregion }
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}

通过页面名字调用页面并添加到tab控件中的更多相关文章

  1. IOS 当一个控件被添加到父控件中会调用(didMoveToSuperview)

    /** * 当一个控件被添加到父控件中就会调用 */ - (void)didMoveToSuperview { if (self.group.opened) { self.nameView.image ...

  2. webview调用外部浏览器而不是在控件中显示

    view.loadUrl(url); // 如果页面中链接,如果希望点击链接继续在当前browser中响应,                     // 而不是新开Android的系统browser ...

  3. 将数据库数据添加到ListView控件中

    实现效果: 知识运用: ListView控件中的Items集合的Clear方法 //从listView控件的数据项集合中移除所有数据项 补充:可以使用Remove或RemoveAt方法从集合中移除单个 ...

  4. 将数据表中的数据添加到ComboBox控件中

    实现效果: 知识运用: ComboBox控件的DataSource 属性 //获取或设置ComboBox的数据源 public Object DataResouce{get;set;} //属性值:任 ...

  5. swing实现QQ登录界面1.0( 实现了同一张图片只加载一次)、(以及实现简单的布局面板添加背景图片控件的标签控件和添加一个关闭按钮控件)

    swing实现QQ登录界面1.0( 实现了同一张图片只加载一次).(以及实现简单的布局面板添加背景图片控件的标签控件和添加一个关闭按钮控件) 代码思路分析: 1.(同一张图片仅仅需要加载一次就够了,下 ...

  6. web页面动态加载UserControl,并调用用户控件中的方法来初始化控件

    1,HTML页 头部注册: <%@ Register Src="~/WorkLog/WorkLogNewV1/UserControl/CeShiBu.ascx" TagPre ...

  7. .net dataGridView当鼠标经过时当前行背景色变色;然后【给GridView增加单击行事件,并获取单击行的数据填充到页面中的控件中】

    1.首先在前台dataGridview属性中增加onRowDataBound属性事件 2.然后在后台Observing_RowDataBound事件中增加代码 protected void Obser ...

  8. 扩展easyUI tab控件,添加加载遮罩效果

    项目里要用HighChart显示图表,如果返回的数量量太多,生成图表是一个很耗时的过程.tab控件又没有显示遮罩的设置(至少本菜是没有找到), Google了一下,根据另一个兄台写的方法,拿来改造了一 ...

  9. 在RichTextBox控件中添加图片和文字

    public void SetText(RichTextBox rtb) { rtb.Text = "在RichTextBox控件中添加图片和文字" + Environment.N ...

随机推荐

  1. No repository found containing: …错误解决

    由于我安装的是Eclipse ForJava Development,无JAVA EE,查找资料后发现可以自己在已有软件的基础上配置,总结如下: >>>>>点开之后,找到 ...

  2. python 并发编程目录

    操作系统介绍 操作系统发展史 进程理论 多进程 多线程 协程 io模型

  3. Mycat+Mysql主从复制实现双机热备

    Mycat+Mysql主从复制实现双机热备 一.mysql主从配置原理 双机热备的概念简单说一下,就是要保持两个数据库的状态自动同步.对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据 ...

  4. Python常用方法库备忘(一)_当前路径下文件夹和文件

    #!/usr/bin/env python # -*- coding:utf-8 -*- # --------------*-------------- # @Author : AilF # @Tim ...

  5. 小记---------kafka理论及命令行操作

    kafka-0.10.1.X版本之前: auto.offset.reset 的值为smallest,和,largest.(offest保存在zk中)   kafka-0.10.1.X版本之后: aut ...

  6. P1224 [NOI2013]向量内积

    传送门 发现这个内积和矩乘有点像,考虑构造一个 $n$ 行 $m$ 列的矩阵 $A$,每一行都是一个题目给定的 $m$ 维向量 设 $B=AA^T$ ,其中 $A^T$ 为 $A$ 的转置矩阵,那么对 ...

  7. java线程捕获异常

    java多线程程序中,所有线程都不允许抛出未捕获的checked exception(比如sleep时的InterruptedException),也就是说各个线程需要自己把自己的checked ex ...

  8. having函数,case when与order by

    having:用于筛选分组后的各组数据.聚合函数,和group by一起使用(where不能和聚合函数使用)group by放在order by前使用,放在之后报错SELECT user_id fro ...

  9. mysql导入导出数据,备份,恢复数据

    MYSQL 实现导入数据 .备份和恢复数据库 1.使用msql命令导入数据 # mysql -uroot -p 需要选择一个数据库 < runoob.sql #mysql -u username ...

  10. React结合AntD的upload组件写头像上传

    upload组件里面action就是调upload接口,获取图片url地址 setImg获取url,点击保存传到后台   action 上传头像方法 //上传头像 changeImg = info = ...