C#委托使用

本文详细介绍了C#中的委托概念,它允许将方法作为参数传递,实现灵活的代码组织。通过示例展示了如何创建和使用委托,包括将方法作为参数传递给统一处理方法,实现多播委托以一次性调用多个方法,以及如何直接调用和使用Invoke方法安全地执行委托。此外,还讨论了委托在处理事件时的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

在“page”中调用统一的刷新方法
在这里插入图片描述

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

在页面中向委托传入方法
在这里插入图片描述

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值