就是一个winform调入一个dll,让这个dll可以操作当前winform的东西,比如增加按钮,修改工具栏的或菜单状态等等。
另外这些东西要在这个dll里面的,我至所以想得到这样的效果,是在考虑写代码较多的程序时,有些功能想放在dll里,等到要用到的时候才去调用,这样可以减少程序打开时候的资源,也可以提高程序的打开速度。

解决方案 »

  1.   

    top top top top top top top top top top top top
      

  2.   

    你在dll中引用主窗体所在的程序集,然后把这个主窗体传进行,就可以修改了
      

  3.   

    可以的,我们以前项目中尝试过,但未正式应用
    遗憾的是现在做WEB了,Win方面的好久不看了
      

  4.   

    把FORM的指针传给那个DLL,然后就可以在DLL里操作FORM里的东西了啊.
    using XXX;
    class form:System.Windows.Forms.Form
    {
         Ojbect o = new Ojbect(this);
         
    }x.DLL
    class x
    {
       System.Windows.Forms.Form fm;
       x(System.Windows.Forms.Form form)
       {
           fm = form;
       }   OperationA(){ fm.Button.Text = "xxx"};
       OperationB(){ fm.Controls.Add(new XXX))};
    }