为了账号安全,请及时绑定邮箱和手机立即绑定

求教C#动态创建子窗体问题?

求教C#动态创建子窗体问题?

神不在的星期二 2018-10-25 09:06:46
各位大大求教C#动态创建子窗体问题?我问题是是:在C#中,有一个主界面,有2个以上子窗体,且子窗体在界面设计好内容、格式之后,编译为DLL文件。请问如何设计一个公共库可以在主界面中使用(公共库最也是DLL库),实现直接代入子窗体名称作为参数,就可以将子窗体加载生成,并能传递给子窗体2个参数,一个是用户名一个是口令,作为子窗体系统权限的判断使用。最后的效果是主界面、公共库DLL、子功能DLL窗体三者完全解耦,公共库和子窗体的任何修改都不会影响主界面。谢谢!请高手帮忙! 
查看完整描述

2 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

重载Form的构造函数,

在包含子窗口的DLL中添加一个引用子窗口的类(例如c1),

在主窗口中新建一个c1类,用c1引用子窗口,这样就解耦了。

 

比如:

public class form1:form

{   

       public form1(int prameter1,int prameter2)

       {

        }

 }

public class refForm

{

         public refForm() { }

   public showForm(int prameter1,int prameter2)

   {

       form1 f=new form1(prameter1,prameter2);

       f.showdialog();

     }

 }

以上为子窗口所在的类库

以下为主窗口调用子窗口的类库

public class mainform:form

{

  public void showchildform()

  {

    refForm rf=new refForm();

      rf.showForm(prameter1,prameter2) ;

  }

}

 

当然在调用子窗口类库前,

要引入子窗口类库;


查看完整回答
反对 回复 2018-10-30
  • 2 回答
  • 0 关注
  • 869 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信