2009-12-23 42 views
2

什麼是C#中的事件?你能給我一個清晰的實時例子和程序嗎?C#中的事件 - 定義和示例

+5

請嘗試制定你的問題。它看起來像你坐下來等待有人做你的工作,而不是幫助你完成你的工作。 – 2009-12-23 10:49:49

回答

10

的一個很好的概述事件是在對象上的鉤,其中對象可以說「嘿,一些有趣的事情即將發生」(或剛剛發生) ,並且對象外部的代碼可以說(在此之前發生了某些事情)「我對該消息感興趣」。

例如採用按鈕,此代碼:

btOK.Click += new EventHandler(btOK_Click); 

這是說給按鈕:嘿,當你想(當用戶點擊該按鈕被解僱)解僱的Click事件,讓我通過調用我的方法知道btOK_Click。

你可以想想另一種方式。假設您的顯示器附有一張黃色的便條,上面寫着「每當代碼停止編譯時,請致電Frank」,這是一個事件。當你給他打電話時,弗蘭克做了什麼,那就是「事件處理程序」,這是爲響應你的事件而運行的「代碼」。

所以,條件是:

  • 事件:在對象上的掛鉤,其中對象之外的代碼可以說「當某事某事發生,那大火此事件,請撥打我的代碼」
  • 事件處理程序:當事件觸發
  • 觸發事件時所調用的代碼:基本上一樣調用它,它只是一個不同的詞本質上是一回事

有PL在網絡上獲取關於事件和信息的信息。NET/C#:

或...你可以問更具體的問題在這裏,我敢肯定有人會幫助你瞭解細節。

快樂的事件處理。

2

事件是您可以在代碼中在運行時回調的方法。

+0

好的答案我明白 – ratty 2009-12-23 10:37:40

+0

好的和精確的解釋。 – Martin 2012-12-10 12:06:03

4

嘗試C# Events Tutorial on MSDN

摘要:

在C#中的事件是一類以 提供通知的 客戶端類時,一些有趣的事情發生了 爲對象的一種方式。熟悉用於事件的最多 是 圖形用戶界面;通常, 代表 中控件的類別 當用戶對控件執行某些操作時(例如,單擊 按鈕),接口的事件通知爲 。

1

的事件可用於委託對象的存取,就像一個屬性是一個字段的存取器。訪問者被命名爲「add」和「remove」,而不是「get」和「set」。一個區別是,如果您不提供自己的編譯器,編譯器會自動生成訪問器。

直到您瞭解代表的功能之後,您才能理解事件的真正含義。 Google使用該關鍵字。