關於C#事件處理函數中的參數(object sender, EventArgs e)


1、是事件源,表示觸發事件的那個組件
   如(button/label/listview...),比如說你單擊button,那么sender就是button

 

2、EventArgs是事件參數,它用來輔助你處理事件

   比如說你用鼠標點擊窗體,那么EventArgs是會包含點擊的位置等等

   例:

private void label1_MouseClick(object sender, MouseEventArgs e)  
{  
        Label senderLabel = (Label)sender; // 根據sender引用控件  
        senderLabel.Text = e.Button.ToString(); // 根據e中的button參數,判斷是左鍵按下還是右鍵  
}

  

3. e代表事件對象,里面有該事件的信息...... e只是習慣的名稱,當然你也可以命名為其它的,你寫成 a b c d f g h i j都可以。

 

4. e是一個類,存事件要用的數據。不同的事件e可能不同
TreeNodeMouseClickEventArgs有下面幾個屬性(來自MSDN):
名稱 說明 
  Button  獲取曾按下的是哪個鼠標按鈕。 (繼承自 MouseEventArgs。) 
  Clicks  獲取按下並釋放鼠標按鈕的次數。 (繼承自 MouseEventArgs。) 
  Delta  獲取鼠標輪已轉動的制動器數的有符號計數。制動器是鼠標輪的一個凹口。 (繼承自 MouseEventArgs。) 
  Location  獲取鼠標在產生鼠標事件時的位置。 (繼承自 MouseEventArgs。) 
  Node  獲取被單擊的節點。 
  X  獲取鼠標在產生鼠標事件時的 x 坐標。 (繼承自 MouseEventArgs。) 
  Y  獲取鼠標在產生鼠標事件時的 y 坐標。 (繼承自 MouseEventArgs。) 

 

5. 不同的事件的這個e的內容不同,例如鼠標移動的事件就會包含鼠標的X,Y坐標信息等,如果是鍵盤事件,這個e里面會包含你當前是按的哪個鍵的信息,有沒有按Ctrl鍵、Alt鍵等等。

這就是事件發生時的一些參數情況。不同的事件,這個參數是不同的類型,包含的信息也不同。

想了解更多C#知識,請掃描下方公眾號二維碼

 

 

需加微信交流群的,請加小編微信號z438679770,切記備注 加群,小編將會第一時間邀請你進群!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM