C#委托使用

一、简介
委托是一个类,用来定义指定的方法类型, 委托类型的变量可以保存相应类型的方法,将方法作为参数传递。
二、基本使用方法和使用场景
1.将方法作为参数传递
例:在定义了一个统一的刷新页面处理方法中,不同的页面刷新过程中有不同的处理,可以将处理方法作为参数传入。
首先定义一个委托类型,在统一方法中传入此委托类型:
C#委托使用_第1张图片

在“page”中调用统一的刷新方法
C#委托使用_第2张图片

2.多播委托
一个委托可以存储多个方法,使用+=向委托中添加方法,-=删除委托中的某个方法,使用=直接给委托赋值,会覆盖掉之前添加的方法。比如在某个操作中一个值改变,多个页面都需要刷新,此时一个一个调用每个页面的刷新方法是会耗费大量时间的,我们可以用委托把每个方法预先保存下来,统一调用。
C#委托使用_第3张图片

在页面中向委托传入方法
C#委托使用_第4张图片

3.委托直接调用
委托可以直接调用,即:委托可以像调用方法一样直接调用,但需要判断是否为空,委托中没有注册方法会报错。例:
在这里插入图片描述

4.Ivoke方法调用
和直接调用有些类似,可以用“?”来判断是否为空,如果为空则不执行。
在这里插入图片描述

你可能感兴趣的:(c#)