C#中的事件 - 定义和示例

rat*_*tty 2 c# events

什么是活动C#?你能给我一个明确的实时例子和程序吗?

ang*_*son 10

事件是一个对象上的钩子,对象可以说"嘿,有趣的事情即将发生"(或刚刚发生),对象外部的代码可以说(在事情发生之前)"我是对这条消息感兴趣".

以按钮为例,此代码:

btOK.Click += new EventHandler(btOK_Click);
Run Code Online (Sandbox Code Playgroud)

这对按钮说:嘿,当你想要触发Click事件(当用户点击按钮时触发),请通过调用我的方法btOK_Click告诉我.

你可以用另一种方式来思考它.假设您的显示器上附有一个黄色便条贴,上面写着"每当代码停止编译时,请致电Frank",这是一个事件.当你打电话给他时,弗兰克会做什么,那就是"事件处理程序",即响应你的事件而运行的"代码".

所以条款是:

  • 事件:对象上的一个钩子,对象外部的代码可以说"当某件事发生时,触发此事件,请调用我的代码"
  • 事件处理程序:事件触发时调用的代码
  • 发射一个事件:基本上与调用它一样,对于基本相同的事情来说,它只是一个不同的词

网上有很多关于事件和.NET/C#的信息:

或者......你可以在这里提出更具体的问题,我相信有人会帮你理解细节.

快乐的事件处理.