我要把功能做成用户控件,UserControl,一个用户控件做成一个BLL可需要在UserControl1上需要实例化UserControl2  
UserControl2 UserControl2=new UserControl2();此时UserControl2 又不存在,该怎么才能解决呢 ??

解决方案 »

  1.   

    UserControl2 又不存在
    是什么意思
      

  2.   

    UserControl2 是另一个解决发案下的用户控件
      

  3.   

    Bil里定义一个接口
    UserControl2继承这个接口
    然后在bil里的那个控件,开放一个属性,这样你有可以在设计器动态把UserControl2传过去
      

  4.   

    要定义一套相对独立的模块,要求它们互相都不认识.但是可能会使用对方?
    在松耦合下,可以找一下它们都认识的来实现,定义一套BLL均需实现的接口.它们对方不需要知道对方是谁,只需要知道它们能做什么就可以了.
    但是这里有个问题.就是你的BLL,如果要做到相对独立就应该尽量避免交叉,而如果出现类似的需求,那就不要再修改现有BLL,而此时你是不是可以考虑增加一个CBL(组合逻辑)呢,用CBL来按照接口协议来组合使用多个BLL,来达到目标需求.