關(guān)于C#事件處理函數(shù)中的參數(shù)
1、是事件源,表示觸發(fā)事件的那個(gè)組件
如(button/label/listview...),比如說(shuō)你單擊button,那么sender就是button
2、EventArgs是事件參數(shù),它用來(lái)輔助你處理事件
比如說(shuō)你用鼠標(biāo)點(diǎn)擊窗體,那么EventArgs是會(huì)包含點(diǎn)擊的位置等等
例:
- private void label1_MouseClick(object sender, MouseEventArgs e)
- {
- Label senderLabel = (Label)sender; // 根據(jù)sender引用控件
- senderLabel.Text = e.Button.ToString(); // 根據(jù)e中的button參數(shù),判斷是左鍵按下還是右鍵
- }
3. e代表事件對(duì)象,里面有該事件的信息...... e只是習(xí)慣的名稱,當(dāng)然你也可以命名為其它的,你寫成 a b c d f g h i j都可以。
4. e是一個(gè)類,存事件要用的數(shù)據(jù)。不同的事件e可能不同
TreeNodeMouseClickEventArgs有下面幾個(gè)屬性(來(lái)自MSDN):
名稱 說(shuō)明
Button 獲取曾按下的是哪個(gè)鼠標(biāo)按鈕。 (繼承自 MouseEventArgs。)
Clicks 獲取按下并釋放鼠標(biāo)按鈕的次數(shù)。 (繼承自 MouseEventArgs。)
Delta 獲取鼠標(biāo)輪已轉(zhuǎn)動(dòng)的制動(dòng)器數(shù)的有符號(hào)計(jì)數(shù)。制動(dòng)器是鼠標(biāo)輪的一個(gè)凹口。 (繼承自 MouseEventArgs。)
Location 獲取鼠標(biāo)在產(chǎn)生鼠標(biāo)事件時(shí)的位置。 (繼承自 MouseEventArgs。)
Node 獲取被單擊的節(jié)點(diǎn)。
X 獲取鼠標(biāo)在產(chǎn)生鼠標(biāo)事件時(shí)的 x 坐標(biāo)。 (繼承自 MouseEventArgs。)
Y 獲取鼠標(biāo)在產(chǎn)生鼠標(biāo)事件時(shí)的 y 坐標(biāo)。 (繼承自 MouseEventArgs。)
5. 不同的事件的這個(gè)e的內(nèi)容不同,例如鼠標(biāo)移動(dòng)的事件就會(huì)包含鼠標(biāo)的X,Y坐標(biāo)信息等,如果是鍵盤事件,這個(gè)e里面會(huì)包含你當(dāng)前是按的哪個(gè)鍵的信息,有沒(méi)有按Ctrl鍵、Alt鍵等等。
這就是事件發(fā)生時(shí)的一些參數(shù)情況。不同的事件,這個(gè)參數(shù)是不同的類型,包含的信息也不同。
本文轉(zhuǎn)載自微信公眾號(hào)「CSharp編程大全」,可以通過(guò)以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系CSharp編程大全公眾號(hào)。