關於object sender,EventArgs e 的一些解釋

來源:互聯網
上載者:User

( object sender , EventArgs e )      是C#裡面的事件響應的代碼,在我們列印的課本的122頁裡面有講到一些,結合網上的一些資料,總結如下:
EventArgs是包含事件數目據的類的基類,用於傳遞事件的細節。
EventHandler是一個委託聲明如下(其在.Net類庫中如下聲明的)
public delegate void EventHandler( object sender , EventArgs e )
所以,所有形如:  void 函婁名(object 參數名,EventArgs 參數名); 的函數都可以作為Control類的Click事件回應程式法了。object的參數名一般用Source或Sender來表示,兩個沒有區別。
如下面所定義的一個事件回應程式法:
private void button1_Click(object sender, System.EventArgs e)
參數object sender表示引發事件的對象(其實這裡傳遞的是對象的引用,如果是button1的click事件則sender就是button1),System.EventArgs e 代表事件的相應資訊。

下面我們可以看下Button類的事件聲明,以Click事件為例。
public event EventHandler Click;
這裡定義了一個EventHandler類型的事件Click
private void button1_Click(object sender, System.EventArgs e)
             {
                       ...
                 }
這是我們和button1_click事件所對應的方法。
那我們怎麼把這個方法和事件聯絡起來呢,請看下面的代碼。
this.button1.Click += new System.EventHandler(this.button1_Click);   
把this.button1_Click方法綁定到this.button1.Click事件。

以上原理簡單理解下就可以了,在實際操作中我們只需要在代碼裡面調用Web控制項裡面使用button控制項,裡面的屬性OnClick="button1_Click" 語句便可以起到調用方法的功能了。在VS。NET中可以直接在設計頁面加入button, 而上面紅色的那行代碼編譯器會自動實現(可在cs代碼檔案裡面看到)。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.