名稱有點饒,不是很好了解,但我喜歡這種大白話,不喜歡書所翻譯過來的話,呵呵!
今天要把一個不确定的問題解決,問題是:一個程式中,有一個屬性,如果它為true時,我希望把另一些方法自動運作,這是可以通過訂閱事件來實作的,對嗎?經過我的測試确實是這樣的,呵呵。
事件一個一直叫我們頭痛的話題,一個能不用就不用的東西,我們程式員為什麼那麼怕“事件”呢?我來分析幾個原因
1 對本身的概念不是很了解
2 對它的作用不是很清晰,可能書上說不到點上,個人認為
3 平時用的少,是以對它更加陌生
今天,我就和大家一起再學習一個C#的事件
一說事件,就不行不說委托,這兩者到底是什麼關系呢,在我看來,委托就是一個類,而事件就是這個類的一個執行個體,呵呵,這樣大家就容易了解了吧
事件由事件資料源,事件所發生的類和事件訂閱者們組成,“事件訂閱者們”就是說,一個事件可以被多個訂閱都訂閱。
開始寫代碼了,代碼最能說明問題:
事件源類:
一都是以EventArgs 結尾的,其中EventArgs 本身它是所有事件源類的基類,它不提供任何事件源資訊,如果有個性化的事件資訊,需要去派生它
接下來看,發生事件的類,我們的事件就在這裡發生,在什麼時候,什麼情況下發生,都來自這裡。
這裡訂閱事件時,我們使用+=就可以了,事實上就是建立一個委托類型的新事件執行個體而以。
祝您晚——來個好夢吧!