어떻게 두 번 처리되는 이벤트를 방지 할이벤트 핸들러가 중복되지 않도록 하시겠습니까? (동일한 핸들러 경우?)
Module Module1
Sub Main()
Dim item As New Item
AddHandler item.TitleChanged, AddressOf Item_TitleChanged
AddHandler item.TitleChanged, AddressOf Item_TitleChanged
item.Title = "asdf"
Stop
End Sub
Private Sub Item_TitleChanged(sender As Object, e As EventArgs)
Console.WriteLine("Title changed!")
End Sub
End Module
Public Class Item
Private m_Title As String
Public Property Title() As String
Get
Return m_Title
End Get
Set(ByVal value As String)
m_Title = value
RaiseEvent TitleChanged(Me, EventArgs.Empty)
End Set
End Property
Public Event TitleChanged As EventHandler
End Class
는 출력 :
이Title changed!
Title changed!
원하는 출력 :
Title changed!
내가 이벤트를 원하는 관리자가이 이벤트가이 핸들러에 의해 이미 처리되었으므로이를 다시 처리하지 않아야 함을 감지합니다.
메모리 누수처럼 보입니다. –