2014-08-29 31 views
1

當我試圖在VB.NET中添加事件處理函數時,我得到一個ArgumentExceptionVB.NET:委託給一個實例方法不能有'this'

Delegate to an instance method cannot have null 'this' 

唯一的例外發生在這裏:

AddHandler MyClass.SomePropertyChanged, AddressOf MySecondClass.HandleSomePropertyChanged 

類:

Class MyClass  
    Public Event SomePropertyChanged(ByVal sender As Object, ByVal e As SomePropertyChangedEventArgs) 
    Protected Overridable Sub OnSomePropertyChanged(ByVal e As SomePropertyChangedEventArgs) 
     RaiseEvent SomePropertyChanged(Me, e) 
    End Sub 

    'I'm raising the event like this: 
    OnSomePropertyChanged(New SomePropertyChangedEventArgs("Rating", 0.09)) 

End Class 

Class MySecondClass  
    Public Sub HandleSomePropertyChanged(ByVal sender As Object, ByVal e As SomePropertyChangedEventArgs) 
     '... 
    End Sub 
End Class 

EventArgs的我已經定義爲:

Public Class SomePropertyChangedEventArgs 
    Inherits EventArgs 
    Public Property PropertyName As String 
    Public Property Value As Object 
End Class 

我沒有得到什麼這裏的問題 -

+0

通過PropertyName,值 – Sathish 2014-08-29 09:05:30

回答

1

這似乎表明,在這條線:

AddHandler MyClass.SomePropertyChanged, AddressOf MySecondClass.HandleSomePropertyChanged 

MySecondClass變量是Nothing

+0

這正是問題,由於我的代碼中其他地方的錯誤。 – Nuts 2014-09-25 07:30:25