基于事件的编程:创建复杂且高度互动的Windows应用程序
1. 委托(Delegates)
在C#中,委托构成了事件的基础。委托是.NET类的特殊类型,它们的实例存储的是方法的引用(地址),而不是实际的数据。委托不仅用于响应GUI事件的Windows应用程序之外的应用程序中;然而,它们与事件的关系使它们变得有趣且值得在此介绍。
定义委托
委托基类类型定义在 System 命名空间中。委托的声明看起来更像是方法声明而不是类定义;然而,它没有主体。它以关键字 delegate 开始,以参数的括号列表结束,后面跟着一个分号。每个委托类型都有一个签名,该签名可能包括零个或多个参数。记住,方法的签名包括其名称、参数数量和参数类型。方法的签名不包括返回类型。就像方法一样,委托可能包括返回类型或作为其标题的一部分的关键字 void 。然而,与方法不同的是,委托的返回类型成为其识别签名的一部分。
// 示例9-1
delegate string ReturnsSimpleString();
使用委托
在C#中,这些后台的管道工作不需要程序员过多干预即可处理。实际上,如果你正在使用Visual Studio,除了事件处理方法中出现的语句之外,当你识别出你的程序需要接收通知的事件时,所有的代码都会自动为你生成。
2. 事件处理程序(Event-handlers)
事件处理程序是响应特定事件的方法。当你双击一个按钮控件对象
C#基于事件编程创建Windows应用
超级会员免费看
订阅专栏 解锁全文
1260

被折叠的 条评论
为什么被折叠?



