程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> object sender,EventArgs e的一些講解

object sender,EventArgs e的一些講解

編輯:.NET實例教程
說的通俗一些,就是:

有一個叫做EventHandler 的家伙,他會告訴你(主程序),有一些事情發生了:這個事情是誰導致的呢?是某個object類型對象導致的,它用Source或Sender來表示。這個事情是什麼事呢?e的內容就是事情的內容了。

至於Source和Sender,沒有區別,你想用哪個就用哪個,其實都是一樣的。


所以,我們在程序中的事件處理函數就是依賴於這個東西實現的:比方說你點了一個按鈕,程序怎麼知道應該用哪個函數來處理這個動作呢?那麼EventHandler 這個家伙會告訴程序:"button1(sender)被點擊(e)了,請調用對應的處理函數"。當然這個函數是誰,這個函數要做什麼,是由你自己寫的。

再深入一層,這個過程實際上就是:你的動作被windows捕獲,Windows把這個動作作為系統消息發送給程序(可以看message結構),程序從自己的消息隊列中不斷的取出消息,並在消息循環中尋找對應的處理方式,這時message結構中的類似於sender和e的東東就起到了引導程序使用正確的處理函數的作用。

歸根究底,這個sender和e及其一整套的處理方式,只不過是Windows消息機制的另外一種表現罷了 ^_^


是C#.Net的.
object sender 發出事件的對象
System.EventArgs e 對象中的數據

如果是按鈕button的話,那sender就是那個button,
e是事件參數,在某些事件裡,e用處不大,比如在MouseEventArgs的Mouse事件中,可以看到e包括mouse的坐標值等,以供你的程序使用。
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved