共用方式為


Visual Basic 中的繼承事件處理常式疑難排解

更新:2007 年 11 月

這個主題列出在繼承元件中事件處理常式時常發生的問題。

程序

每次呼叫時事件處理常式程式碼會執行兩次

  • 繼承的事件處理常式中絕對不能包括 Handles 子句。基底類別中的方法已經與事件相關,所以將隨之引發。應該移除繼承方法中的 Handles 子句。

    ' INCORRECT
    Protected Overrides Sub Button1_Click( _
        ByVal sender As System.Object, _
        ByVal e As System.EventArgs) _
        Handles Button1.Click
    
        ' The Handles clause will cause all code
        ' in this block to be executed twice.
    End Sub
    
  • 如果繼承的方法沒有 Handles 關鍵字,請驗證程式碼中未包括額外的 AddHandler 陳述式或任何處理相同事件的其他方法。

請參閱

工作

HOW TO:撰寫事件處理常式

概念

事件和事件處理常式

HOW TO:處理 Visual Basic 中的事件

其他資源

Visual Basic 中的事件