现有一窗口,在窗口中根据上排的几个按钮,可控制下方的panel框中显示的内容,显示的都是独立的用户控件,请问,在这些独立的用户控件中假使一个为A,A中有一个按钮,按其按钮跳转到B(也为用户控件),怎么使B也在panel中,在A的跳转按钮的click事件中写吗?要怎么写?新手,很不解。

解决方案 »

  1.   

    在A的click事件里写,可以动态创建B,也可以实现就把B放在panl里,如果动态创建
    B b = new B();
    //设置其属性,如大小,位置,颜色等,可以参考窗体的Designer.cs文件
    最重要的,要把B放入panl里
    panl.Controls.Add(B)
      

  2.   

    那要怎么取得主窗口上的panel的名称?
      

  3.   

    主窗体上的panel设置成public的,子窗体通过主窗体找到这个panel
      

  4.   

    请问是在Designer.cs里面改吗?这样把里面所有控件都变成public了?
      

  5.   

    lz这个给哪里做的项目了 要是自己玩玩 
    方法1.用户控件A中有搞一个属性用来放自己所在的panel,在A控件的那个按钮的事件中判断不为null就直接使用
    方法2.通过代码获得用户控件A的父容器,直接用通用类Control得到,判断这个Control is Panel,这样也可以获得那个panel实体如果你是给公司或者要有扩展项 还是抽象吧#12楼是正解