C#委托基本用法

  由于新接触C#,对C#的委托也看过一些文章,但是一直没有理解透彻,现在我把我的粗略理解写下来,希望大家指点。

在父类想要调用子类的方法时可以考虑使用委托:由于父类不可以调用子类里面的方法,故可以通过定义委托实现调用子类的方法。使用过程如下:

  1)、定义一个委托delegate;         public delegate void OpenFileEventHandler(object sender,OpenFileEventArgs e);

  2)、在父类定义一个事件event;         public event OpenFileEventHandler OpenFile;

  3)、在子类实例化父类的地方注册该事件;    OpenFile += new OpenFileEventHandler(OpenFile); 其中OpenFile()方法的签名要和委托一致。

  4)、在父类需要调用子类方法的地方调用该事件; if(OpenFile!=null)  OpenFile(sender,e);

这样,在父类运行到OpenFile(sender,e);时就会调用子类里面的OpenFile();方法。

由于理解不够深入,希望各位大侠给出指导。

posted on 2010-10-25 13:58  paulma  阅读(1016)  评论(0编辑  收藏  举报