2013-08-05 1 views
0

Я делаю переходное кодирование, используя библиотеку переходов .net, найденную @http://code.google.com/p/dot-net-transitions/. Я пытаюсь добавить событие для запуска завершенных переходов. В моей подлодке, у меня есть следующие утверждения:Почему мое мероприятие не стреляет?

Private Sub btnLogin_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLogin.Click 

If md5Password = rtnPassHash Then 

       AddHandler Me.TransitionCompletedEvent, AddressOf theHandlerFunction 

       Dim tr_empID = New Transition(New TransitionType_Linear(500)) 
       tr_empid.add(txtEmployeeID, "BackColor", Color.LightGreen) 

       Dim tr_passw = New Transition(New TransitionType_Linear(500)) 
       tr_passw.add(txtPassword, "BackColor", Color.LightGreen) 

       tr_empID.run() 
       tr_passw.run() 
       AddHandler Me.TransitionCompletedEvent, AddressOf theHandlerFunction 

       Dim tr_empID = New Transition(New TransitionType_Linear(500)) 
       tr_empid.add(txtEmployeeID, "BackColor", Color.LightGreen) 

       Dim tr_passw = New Transition(New TransitionType_Linear(500)) 
       tr_passw.add(txtPassword, "BackColor", Color.LightGreen) 

       tr_empID.run() 
       tr_passw.run() 

end if 

end sub 

Вне этого подразделы у меня есть:

Public Event TransitionCompletedEvent As EventHandler(Of Transition.Args) 

Private Sub theHandlerFunction(ByVal sender As Object, ByVal args As Transition.Args) Handles Me.TransitionCompletedEvent 
    MsgBox("Event Fired") 

End Sub 

Однако событие не стрельбы после того, как переход завершен. Почему это должно быть?

+0

Какой код является 'AddHandler' линия? Это в обработчике событий или что-то еще? Можете ли вы опубликовать весь метод для первого кода? –

+0

Я добавил немного выше, он находится в суб-кнопке с нажатием кнопки. Обработчик добавляется после моего условия для соответствия md5 и должен теоретически срабатывать после завершения перехода. –

+0

«Addhandler» ведет к событию, когда он не запускает событие. – OneFineDay

ответ

1

Базовая конструкция:

Public Class Transition 
    Public Event TransitionCompleted(args As Transition.Args) 
    Public Sub SomeSub() 
    RaiseEvent TransitionCompleted(New Transition.Args With {set some properties}) 
    End Sub 
    ... 
End Class 

Public Class Form1 
Private transition1 As New Transition 
Private Sub Login_Click(...) ... 
    ... 
    Addhandler transition1.TransitionCompleted, AddressOf TransitionCompleted 
End Sub 

Private Sub TransitionCompleted(args As Transition.Args) ' no handles clause 
    MessageBox.Show("event fired") 
End Sub 
End Class 
+0

это очень помогло мне, спасибо! –