none
UserControl中嵌入另一个UserControl时的事件重写问题 RRS feed

  • 问题

  • 我有A,B两个页面,两个页面大部分内容都相同,只有4个Button的功能不同

    所以我做好A页面后,在B页面中加载了A页面,这时却出现了一个问题,我无法重写那4个Button的Click事件

    用Click+=只能使B页面中的Button先执行一次A页面原有的功能,再执行一次B页面添加的功能

    new一个A页面类的实例,用Click-=取消订阅仍然不行,因为是new了一个新实例,并不是B页面加载A页面时的原实例

    而B页面类又不能继承A页面类,所以也无法override

    我现在的做法是在B页面中隐藏了这4个Button,用一个Canvas绝对定位了4个新Button覆盖在原有的位置上

    但这样的做法会导致当A页面的布局更改时,B页面也要跟着更改,而且A页面中这4个Button的位置必须为绝对定位

    请问各位有没有什么好的方法解决此问题?

    2010年4月12日 8:51

答案

  • 找到方法了,唉,钻牛角尖了

    只要在B页面中将该Button的Click-= B页面中A页面控件名.Click事件名称就可以了

    2010年4月12日 9:02