项目中定义BaseForm:From,定义一些共通属性和控件,并重写OnClosing
protected override void OnClosing(CancelEventArgs e)
{
//确认处理
...
base.OnClosing(e);
}
要求所有业务画面从BaseForm继承,这样一来每个画面都有了关闭确认.
问题来了,有一个A画面不希望有关闭确认,当然写成空的OnClosing是不可以的,因为还是需要From的OnClosing处理
也就是说,在A画面里,想实现
protected override void OnClosing(CancelEventArgs e)
{
base.base.OnClosing(e);//直接这么写肯定是不行的
}
的效果,有什么简单的好办法?
谢谢

解决方案 »

  1.   

    你在继承的畫面中調用一次Closing事件,代碼為空,不就不執行baseForm中的Closing事件中的代碼了
      

  2.   

    TO:cnjack
    你说的没错,可这样一来From的OnClosing处理也不执行了
    :)
      

  3.   

    我顶一下,就是说孙子类想执行爷爷类的一个方法。抱歉不知道...再重载一次的时候能不能用base.base点出爷爷类呢?
      

  4.   

    to yan53125
    是这个意思,但base.base好象不行
      

  5.   

    没看明白……………………base.base不就是Form类了??你要这个的事件做什么
      

  6.   

    to lookatliu
    我只是举个例子,实际上BaseForm可能不是从Form里直接继承的,也就是说爷爷里可能有必须执行的处理.
    总之是想饶开爸爸跑一下爷爷的OnClosing
    可能做到吗?