日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
C#支持事件簡(jiǎn)單描述

本文向大家介紹C#支持事件,可能好多人還不了解C#支持事件,沒(méi)有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會(huì)你更多東西。

安康網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)2013年開(kāi)創(chuàng)至今到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)

這里介紹C#支持事件(這個(gè)特點(diǎn)也是MSVJ所具有的),當(dāng)前很多主流程序語(yǔ)言處理事件的方式各不相同,Delphi采用的是函數(shù)指針(這在Delphi中的術(shù)語(yǔ)是“closure”)、Java用改編類來(lái)實(shí)現(xiàn)、VC用WindowsAPI的消息系統(tǒng),而C#則直接使用delegate和event關(guān)鍵字來(lái)解決這個(gè)問(wèn)題。下面讓我們來(lái)看一個(gè)例子,例子中會(huì)給大家舉出聲明、調(diào)用和處理事件的全過(guò)程。

 
 
 
  1. //首先是指代的聲明,它定義了喚醒某個(gè)函數(shù)的事件信號(hào)  
  2. public delegate void ScoreChangeEventHandler (int newScore, ref bool cancel);  
  3.  
  4. //定義一個(gè)產(chǎn)生事件的類  
  5. public class Game  
  6. {  
  7. // 注意這里使用了event關(guān)鍵字  
  8. public event ScoreChangeEventHandler ScoreChange;  
  9. int score;  
  10. // Score 屬性  
  11. public int Score  
  12. {  
  13. get {  
  14. return score;  
  15. }  
  16. set {  
  17. if (score != value)  
  18. {  
  19. bool cancel = false;  
  20. ScoreChange (value, ref cancel);  
  21. if (! cancel)  
  22. score = value;  
  23. }  
  24. }  
  25. }  
  26.  
  27.  
  28. // 處理事件的類  
  29. public class Referee  
  30. {  
  31. public Referee (Game game)  
  32. {  
  33. // 裁判負(fù)責(zé)調(diào)整比賽中的分?jǐn)?shù)變化  
  34. game.ScoreChange += new ScoreChangeEventHandler (game_ScoreChange);  
  35. }  
  36.  
  37. // 注意這里的函數(shù)是怎樣和ScoreChangeEventHandler的信號(hào)對(duì)上號(hào)的  
  38. private void game_ScoreChange (int newScore, ref bool cancel)  
  39. {  
  40. if (newScore < 100)  
  41. System.Console.WriteLine ("Good Score");  
  42. else  
  43. {  
  44. cancel = true;  
  45. System.Console.WriteLine ("No Score can be that high!");  
  46. }  
  47. }  
  48. }  
  49.  
  50. // 主函數(shù)類,用于測(cè)試上述特性  
  51. public class GameTest  
  52. {  
  53. public static void Main ()  
  54. {  
  55. Game game = new Game ();  
  56. Referee referee = new Referee (game);  
  57. game.Score = 70;  
  58. game.Score = 110;  
  59. }  
  60. }  

在主函數(shù)中,我們創(chuàng)建了一個(gè)game對(duì)象和一個(gè)裁判對(duì)象,然后我們通過(guò)改變比賽分?jǐn)?shù),來(lái)觀察裁判對(duì)此會(huì)有什么響應(yīng)。以上介紹C#支持事件。

【編輯推薦】

  1. C#線程同步詳細(xì)分析
  2. C#探討木馬程序淺談
  3. C# Pop3Connection類簡(jiǎn)介
  4. C#數(shù)據(jù)類型簡(jiǎn)單介紹
  5. C#計(jì)算素?cái)?shù)序列淺談

標(biāo)題名稱:C#支持事件簡(jiǎn)單描述
文章鏈接:http://www.5511xx.com/article/cceessc.html