一段比较爽 的 MDI 窗体中打开子窗体的函数。 建议大家使用

简介: 代码如下:<br><div class="UBBPanel"> <div class="UBBTitle"><img style="MARGIN: 0px 2px -3px 0px" alt="程序代码" src="http://www.mysticboy.cn/images/code.gif"> 程序代码</div> <div class="UBBContent">  private
代码如下:
程序代码 程序代码
  private void OpenChild(string Frmnamespace, string ChildTypeName)
        {
            int ret = 0;
            foreach (Form frm in MdiChildren)
            {
                if (frm.GetType().Name == ChildTypeName)
                {
                    frm.Activate();
                    ret = 1;
                    break;
                }
            }
            if (0 == ret)
            {
                string className = Frmnamespace + "." + ChildTypeName;
                Form Instance = (Form) Assembly.Load(Frmnamespace).CreateInstance(className);
          
                Instance.MdiParent = this;
            

                Instance.Show();
            
            }
        }

传入一个窗体,先检查这个窗体是不是有副本,如果有副本,则置前,否则新创建并显示.
使用方法:
  
程序代码 程序代码
private void LbtUserManager_ItemClick(object sender, ItemClickEventArgs e)
        {
            OpenChild("OuterRingRoad", "frmUserManager");
        }

        private void MenuUserPopdemod_ItemClick(object sender, ItemClickEventArgs e)
        {
            OpenChild("OuterRingRoad", "frmUserPopdemod");
        }

        private void MenuCurrentTimeData_ItemClick(object sender, ItemClickEventArgs e)
        {
            OpenChild("ORRTLB", "frmNowVDIInfo");
        }

        private void MenuCarCheckConfig_ItemClick(object sender, ItemClickEventArgs e)
        {
            OpenChild("ORRTLB", "frmVDISetting");
        }

 
目录
相关文章
|
2月前
|
设计模式 程序员 C#
C# 使用 WinForm MDI 模式管理多个子窗体程序的详细步骤
WinForm MDI 模式就像是有超能力一般,让多个子窗体井然有序地排列在一个主窗体之下,既美观又实用。不过,也要小心管理好子窗体们的生命周期哦,否则一不小心就会出现一些意想不到的小bug
213 0
vb如何设置父窗体与子窗体——MDI窗体
vb如何设置父窗体与子窗体——MDI窗体
|
API
机房收费系统之【只允许一个MDI窗体 错误:426】
机房收费系统之【只允许一个MDI窗体 错误:426】
91 0
C#编程学习19:mdi窗体中子窗体不能重复打开的三种实现方式
C#编程学习19:mdi窗体中子窗体不能重复打开的三种实现方式
C#编程学习19:mdi窗体中子窗体不能重复打开的三种实现方式
在C#中设置窗体最前,并且如果不关掉这个窗体,就不能操作其余的控件
窗口名 新窗口名 = new 窗口名();新窗口名.ShowDialog();
486 0
|
C# 算法
WPF 利用子线程弹出子窗体的研究
原文:WPF 利用子线程弹出子窗体的研究   一般来说子线程都是用来处理数据的,主窗体用来实现展现,但是有些时候我们希望子窗体实现等待效果,遮挡主窗体并使主窗体逻辑正常进行,这个业务需求虽然不多,但是正好我们用到了,于是我打算把研究成果写在这了。
1504 0
只打开一个子窗体
在程序处理过程中,某一个功能可能需要打开一个窗体来设置参数,我们需要用户只能打开一个子窗体,可能通过判断窗体对象是否为空来实现。 //判断窗体是否重新实例化 private frmAutoSave fas = null; protected o...
735 0
|
C# 前端开发
WPF用ShowDialog()弹出窗体时控制该窗体的显示位置,并传值回父窗体
原文:http://blog.csdn.net/kiss0622/article/details/5852153 方法一: 1.父窗口代码 Window1.xaml.cs private void Button_Click(object sender, RoutedEventArgs e...
2869 0