现有一DLL是别人的 无法修改。继承此DLL中的INDEX类 就是原来的INDEX页面 但是类中有Page_Load时间 如何在子类中屏蔽掉 或者-=掉!只触发子类的而不触发父类的Page_load

解决方案 »

  1.   

    override 是不可行的 因为父类不是虚方法还请各位多出歪门邪道····解决就好!
      

  2.   

    将父类的方法设置为virtual,然后在子类中override
    至于事件你可以在子类中去掉事件的处理代码。例如,a-=b....
    这样不行??
      

  3.   

    上边的妹子你没看明白人家说的么。父类是dll的。。不可修改的,,急了反编译看看吧
      

  4.   

    谢谢大家 父类是引用的DLL不能修改。虽然能反编译,但是因为其中有很多操作,诸多的方法和熟悉 所以也不想重新整理写一遍。因为只是要做小小的修改 但是问题是页面上的部分空间要去掉。这部分控件在Page_Load中使用了。所以一定会报错。于是我想之需要重新写一下Page_Load事件 并且不要让原来的执行! 可能一般的手段是实现不了了。只是想来搜罗一下歪门邪道···
      

  5.   

    override
    reflector反编译,重写
      

  6.   

    我测试出来默认就不触发父类Page_Load
      

  7.   

    正常不好解决,歪门邪道是可以尝试尝试,在Page_Init事件或者Page_Preload事件里Response.End就一定不会走Page_load事件,不过后面的逻辑也不能运行哦,真正可行还要稍微整理代码。
      

  8.   

    在子类中重新定义就可以使父类的Page_Load事件失效
    protected new void Page_Load(object sender, EventArgs e)