如何通过同一个页面上的一个ascx控件的某一个消息触发另一个ascx控件的状态变化, 
比如说,我在a.ascx控件中的DropDownList控件中选择了 "2 ",自动的在b.ascx控件中的Label中就显示为 "2 ",而不用人为的获取Session之类的存储介质,并且这两个控件是动态加载到aspx文件上的..... 
请教各位高人......

解决方案 »

  1.   

    你总要有一个“加载”流程,它们总要有宿主。作为宿主程序,它注册了a.ascx的(例如) CityChanged 事件,在这个事件处理方法中去取得这个控件实例的)例如)City属性,然后调用另外一个控件实例设置其属性。当然假设另外一个控件实例本身就有一个public方法的参数签名与前一个控件实例的 CityChanged 委托签名相同,那么你的宿主程序可以直接将这个方法注册给 CityChanged 事件,而少写两行代码。
      

  2.   

    a中的DropDownList通过属性暴露出来,b加载时候订阅这个属性的SelecteIndexChange事件
      

  3.   

    参考:
    http://www.cnblogs.com/insus/archive/2011/12/12/2284382.html或者:
    http://www.cnblogs.com/insus/archive/2011/12/10/2283142.html