C# 中委託

來源:互聯網
上載者:User

委託這個東西,只可意會不可言傳,如果理解不了時候如鯁在喉,總不自在。但,我相信,總有一天你會恍然大悟。

我恍然大悟了,那就把悟出來的東東說說。

其實其實委託就是為了適應不可預知的東西。

就像你在表單上放個按鈕,天知道你想幹什麼呢?但是天知道你肯定想幹點什麼!既然知道你肯定想幹點什麼,而且乾的事情肯定跟這個按鈕有關係。這個時候,委託就出現了,作業系統就把點擊這個按鈕要做的事情委託給你了。作業系統就寫個方法名(委託名),然後把按鈕以及點擊事件當作參數,然後,然後你就完成這個方法就好了,比如你想彈出一個對話方塊,如下代碼:

        private void btnStartListening_Click(object sender, EventArgs e)

       {

               MsgBox.Show("hello,world!");

       }

object sender, EventArgs e,這兩個參數第一個是事件的源(按鈕),第二個是什麼事件(點擊),然後你可以利用這兩個參數來實現你想做的事情啦,當然你也可以不用這兩個參數(不是廢話)。

委託系統已經為你做好了,甚至你自己需要寫的方法也被系統給你安排好了,你要做的只是打上“MsgBox.Show("hello,world!");”。啟動並執行時候系統會把“btnStartListening_Click”這個方法當作參數傳遞給一個委託執行個體的。

這個時候,你應該明白,C#中的事件是用委託來實現的。

你理解了嗎?

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.