惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Privacy & Cybersecurity Law Blog
Vercel News
Vercel News
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
N
Netflix TechBlog - Medium
罗磊的独立博客
F
Fortinet All Blogs
T
Threatpost
Y
Y Combinator Blog
博客园_首页
美团技术团队
Security Latest
Security Latest
博客园 - 三生石上(FineUI控件)
T
Tailwind CSS Blog
V
V2EX - 技术
The Cloudflare Blog
L
LINUX DO - 热门话题
博客园 - 司徒正美
Jina AI
Jina AI
P
Proofpoint News Feed
宝玉的分享
宝玉的分享
C
CXSECURITY Database RSS Feed - CXSecurity.com
C
Cybersecurity and Infrastructure Security Agency CISA
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
WordPress大学
WordPress大学
The Hacker News
The Hacker News
P
Privacy International News Feed
T
The Exploit Database - CXSecurity.com
Scott Helme
Scott Helme
有赞技术团队
有赞技术团队
V
V2EX
Stack Overflow Blog
Stack Overflow Blog
M
MIT News - Artificial intelligence
Latest news
Latest news
NISL@THU
NISL@THU
Google DeepMind News
Google DeepMind News
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Cisco Blogs
雷峰网
雷峰网
Application and Cybersecurity Blog
Application and Cybersecurity Blog
B
Blog RSS Feed
W
WeLiveSecurity
D
DataBreaches.Net
G
Google Developers Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
G
GRAHAM CLULEY
Spread Privacy
Spread Privacy
Know Your Adversary
Know Your Adversary
TaoSecurity Blog
TaoSecurity Blog
S
Securelist
Help Net Security
Help Net Security

博客园 - 破孩

C#中Invoke的用法(转) Eclipse安装ADT Plugin时发生错误,提示连接不到 https://dl-ssl.google.com/android/eclipse/...的解决办法! 跟我学MVC系列(Repository模式、LINQ、EF、IOC框架Castle、JQuery、AJAX)(五)Models(ORM、Repository模式、分页) 跟我学MVC系列(Repository模式、LINQ、EF、IOC框架Castle、JQuery、AJAX)(四)Models(ORM、Repository模式、分页) 跟我学MVC系列(Repository模式、LINQ、EF、IOC框架Castle、JQuery、AJAX)(三)Models(ORM、Repository模式、分页) 跟我学MVC系列(Repository模式、LINQ、EF、IOC框架Castle、JQuery、AJAX)(二)Models(ORM) 跟我学MVC系列(Repository模式、LINQ、EF、IOC框架Castle、JQuery、AJAX)(一)数据库建模 .NET 中的 委托与事件 (转) 委托、事件与Observer设计模式 设计模式(转) 设计模式概述(转) C#面试基础问题 (转) C#的抽象类和方法,重载,覆盖,隐藏 学习asp.net比较完整的流程 - 破孩 经典C#面试题集锦(仔细分析,会学到更多) C#中的运行时类型与编译时类型收藏(转) 简化理解回调函数- - 简化理解回调函数- - 想成为最牛程序员吗?以下几点有助你实现这个目标。
C# 中委托
破孩 · 2013-05-09 · via 博客园 - 破孩

委托这个东西,只可意会不可言传,如果理解不了时候如鲠在喉,总不自在。但,我相信,总有一天你会恍然大悟。

我恍然大悟了,那就把悟出来的东东说说。

其实其实委托就是为了适应不可预知的东西。

就像你在窗体上放个按钮,天知道你想干什么呢?但是天知道你肯定想干点什么!既然知道你肯定想干点什么,而且干的事情肯定跟这个按钮有关系。这个时候,委托就出现了,操作系统就把点击这个按钮要做的事情委托给你了。操作系统就写个方法名(委托名),然后把按钮以及点击事件当作参数,然后,然后你就完成这个方法就好了,比如你想弹出一个对话框,如下代码:

        private void btnStartListening_Click(object sender, EventArgs e)

       {

               MsgBox.Show("hello,world!");

       }

object sender, EventArgs e,这两个参数第一个是事件的源(按钮),第二个是什么事件(点击),然后你可以利用这两个参数来实现你想做的事情啦,当然你也可以不用这两个参数(不是废话)。

委托系统已经为你做好了,甚至你自己需要写的方法也被系统给你安排好了,你要做的只是打上“MsgBox.Show("hello,world!");”。运行的时候系统会把“btnStartListening_Click”这个方法当作参数传递给一个委托实例的。

这个时候,你应该明白,C#中的事件是用委托来实现的。

你理解了吗?