成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#事件處理簡單分析

開發 后端
這里介紹C#事件處理,事件既可以被聲明為類域成員(成員變量),也可以被聲明為屬性。兩者的共性為,事件的類型必定是代表元,而函數指針原形和C#的代表元具有相同的含義。

C#語言還是比較常見的東西,這里我們主要介紹C#事件處理,包括介紹ActiveX控件的事件接收等方面。

C#事件處理

當你寫一個類時,有時有必要讓類的客戶知道一些已經發生的事件。如果你是一個具有多年編程經驗的程序員,似乎有很多的解決辦法,包括用于回調的函數指針和用于ActiveX控件的事件接收(event sinks)。現在你將要學到另外一種把客戶代碼關聯到類通知的辦法——使用事件。

事件既可以被聲明為類域成員(成員變量),也可以被聲明為屬性。兩者的共性為,事件的類型必定是代表元,而函數指針原形和C#的代表元具有相同的含義。

每一個事件都可以被0或更多的客戶占用,且客戶可以隨時關聯或取消事件。你可以以靜態或者以實例方法定義代表元,而后者很受C++程序員的歡迎。

既然我已經提到了事件的所有功能及相應的代表元,請看清單5.11中的例子。它生動地體現了該理論。

下列代碼在類中實現C#事件處理:

  1. using System;  
  2. // 向前聲明  
  3. public delegate void EventHandler(string strText);  
  4. class EventSource  
  5. {  
  6. public event EventHandler TextOut;  
  7. public void TriggerEvent()  
  8. {  
  9. if (null != TextOut) TextOut("Event triggered");  
  10. }  
  11. }  
  12. class TestApp  
  13. {  
  14. public static void Main()  
  15. {  
  16. EventSource evsrc = new EventSource();  
  17. evsrc.TextOut += new EventHandler(CatchEvent);  
  18. evsrc.TriggerEvent();  
  19. evsrc.TextOut -new EventHandler(CatchEvent);  
  20. evsrc.TriggerEvent();  
  21. TestApp theApp = new TestApp();  
  22. evsrc.TextOut += new EventHandler(theApp.InstanceCatch);  
  23. evsrc.TriggerEvent();  
  24. }  
  25. public static void CatchEvent(string strText)  
  26. {  
  27. Console.WriteLine(strText);  
  28. }  
  29. public void InstanceCatch(string strText)  
  30. {  
  31. Console.WriteLine("Instance " + strText);  
  32. }  

【編輯推薦】

  1. C#類和結構簡單介紹
  2. C# explicti和implicit詳解
  3. C#編寫ActiveX控件詳細介紹
  4. C# StringBuilder和String淺析
  5. C#別名指示符學習經驗
責任編輯:佚名 來源: cnbeta
相關推薦

2009-08-12 15:20:21

C#事件處理

2009-09-07 15:31:49

C#支持事件

2009-08-12 18:28:09

C#事件處理程序

2009-08-07 17:41:40

C#預處理

2009-09-01 18:05:17

C#類型聲明

2009-09-01 18:36:35

C#委托實例

2009-08-27 15:34:38

C#命名空間

2009-08-27 18:05:54

C#索引功能

2009-08-31 18:24:26

編譯C#文件

2009-09-01 17:32:04

C#版本控制

2009-08-26 18:00:07

C#內部類

2009-08-04 09:56:46

C#事件處理自定義事件

2009-09-03 15:46:57

C#自定義事件

2009-09-01 10:08:57

C#運算符

2009-09-04 10:07:42

C#完全限定名

2009-08-27 10:44:21

C#靜態變量

2009-08-31 16:01:31

C#和設計模式

2009-09-02 10:59:02

C#單路代理

2009-09-03 17:13:19

C#建立項目

2009-08-26 14:01:18

C#標識符
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美日韩综合 | 久久精品免费一区二区 | 黄色成人av| av在线一区二区三区 | 免费在线观看毛片 | 久久久成人一区二区免费影院 | av天天澡天天爽天天av | 国产精品中文字幕在线 | 国产一区久久 | 亚洲毛片| 国产内谢 | 91在线观看| 亚洲一区二区电影网 | 伦理一区二区 | 在线亚洲欧美 | 五月天国产视频 | www.久久99 | 日韩高清中文字幕 | 欧美一区二区三区久久精品 | 亚洲视频中文字幕 | 特级丰满少妇一级aaaa爱毛片 | 久久精品网 | 成人免费大片黄在线播放 | 久久综合欧美 | 爱爱视频在线观看 | 久久久久久av | 亚洲综合大片69999 | 黄色三级在线播放 | 欧美激情综合五月色丁香小说 | 欧美在线观看一区 | av中文字幕在线播放 | 亚洲免费一| 亚洲风情在线观看 | 日本小电影在线 | 国产成人精品999在线观看 | 亚洲精品福利在线 | 国产精品久久久久久久久久久久久久 | 久久99视频精品 | 天堂色区 | 欧美激情久久久 | 欧美日韩综合精品 |