下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第C#事件中關(guān)于sender的用法解讀目錄C#事件sender的小用法一、什么是sender二、小用法C#事件中sender和e參數(shù)的理解
C#事件sender的小用法
開WPF新坑了,看了WPF的炫酷界面,再看看winForm實在是有些慘不忍睹(逃)。后面會開始寫一些短的學(xué)習(xí)筆記。
一、什么是sender
sender最常見到的情況就是下圖參數(shù)列表中的這個了可能平時沒多少注意。
privatevoidButton_Click(objectsender,RoutedEventArgse)
//……blahblahblah
}
sender我們很容易猜到肯定是例子中觸發(fā)單擊事件的那個button控件,它類型是object。C#里的繼承關(guān)系是所有類的基類,萬物基于object(滑稽),所以控件同樣也是繼承與object的,所以將sender進(jìn)行類型轉(zhuǎn)換就能直接得到觸發(fā)事件的控件對象。
privatevoidButton_Click(objectsender,RoutedEventArgse)
Buttonbtn=(Button)sender;
btn.Content="我被點擊了";
}
將sender進(jìn)行類型轉(zhuǎn)換后,就能夠直接對button1的屬性進(jìn)行更改,所以sender是當(dāng)前觸發(fā)事件的控件。
二、小用法
知道了sender是什么后,我們就可以開始加以小小的應(yīng)用了。
我首先想到的就是,當(dāng)有多個控件需要觸發(fā)相同的事件時,使用sender來獲取當(dāng)前觸發(fā)事件的控件,可以在同一個方法中進(jìn)行事件的響應(yīng),能夠使代碼的重用性提高,也能更簡潔
下面用一個小小的例子來解釋(當(dāng)然這個只是我暫時先想到的應(yīng)用)。
界面很簡單,按照以往的設(shè)計習(xí)慣,需要將兩個button的單擊事件分開來寫,彈出是誰被點擊的提示。而現(xiàn)在可以利用sender實現(xiàn)只用一個button_Click事件,就可以顯示是誰被點擊了。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
usingSystem.Windows;
usingSystem.Windows.Controls;
usingSystem.Windows.Data;
usingSystem.Windows.Documents;
usingSystem.Windows.Input;
usingSystem.Windows.Media;
usingSystem.Windows.Media.Imaging;
usingSystem.Windows.Navigation;
usingSystem.Windows.Shapes;
namespaceWPFLittleTips
///
///MainWindow.xaml的交互邏輯
///
publicpartialclassMainWindow:Window
publicMainWindow()
InitializeComponent();
privatevoidbtnObj1_Click(objectsender,RoutedEventArgse)
Buttonbtn=(Button)sender;
if(btn==btnObj1)
MessageBox.Show("Btn1被點擊了");
else
MessageBox.Show("Btn2被點擊了");
}
單擊后的效果應(yīng)該都能想到了,就不貼圖了。
應(yīng)該sender的應(yīng)用還很多,突然發(fā)現(xiàn)以前都沒有注意到的小東西,利用起來還是很有用的。
C#事件中sender和e參數(shù)的理解
sender是事件源,表示觸發(fā)事件的那個組件,比如說你按下按鈕,那么sender就是按鈕
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 46983.703-2025光伏組件用材料測試程序第7-3部分:加速壓力測試光伏組件外表面的磨損測試方法
- 衛(wèi)生統(tǒng)計學(xué)試題及答案
- 網(wǎng)絡(luò)安全考試題及答案
- 2023年人教版五年級語文下冊期中試題及答案【一套】
- 第十一章代表性傳染病的檢疫
- 2022年福建省南僑中學(xué)高考沖刺押題(最后一卷)語文試卷含解析
- 2026年農(nóng)產(chǎn)品品牌建設(shè)培訓(xùn)
- 安全生產(chǎn)三年行動專項整治工作總結(jié)
- 電氣安全施工技術(shù)要領(lǐng)
- 2022~2023自考專業(yè)(國貿(mào))考試題庫及答案第268期
- 教育培訓(xùn)行業(yè)培訓(xùn)師績效考核表
- 城市更新培訓(xùn)課件
- 2026年度哈爾濱市第一??漆t(yī)院公開招聘編外合同制工作人員51人筆試備考試題及答案解析
- 2026年蘇州工業(yè)職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫新版
- 正確停車課件
- 2025年度呼吸內(nèi)科護(hù)士長述職報告
- GB/T 5783-2025緊固件六角頭螺栓全螺紋
- FGR遺傳病因的精準(zhǔn)篩查策略
- 護(hù)患溝通技巧與沖突處理策略
- 《大連醫(yī)科大學(xué)研究生學(xué)位論文書寫規(guī)范》
- 二十屆四中全會測試題及參考答案
評論
0/150
提交評論