2015-12-28 3 views
0

У меня есть некоторые проблемы с сокращением в событиях vb. Это признание me.event. По предложению Ганса я сбросил проверку, если она пуста, для того, чтобы просто запустить событие. Я попытался превратить короткую руку в длинную руку с помощью базы знаний .net, но я просто так потерялся. Пожалуйста помоги.обработчики событий в vb

Private Sub OnRegister_ServerOperationCompleted(ByVal arg As Object) 
     Dim args As InvokeCompletedEventArgs = DirectCast(arg, InvokeCompletedEventArgs) 
     RaiseEvent Me.Register_ServerCompleted.Invoke(Me, New Register_ServerCompletedEventArgs(args.Results, args.Error, args.Cancelled, args.UserState)) 
    End Sub' 
+0

Я получаю событие не может быть вызвано непосредственно при проверке, является ли оно пустым, и если это не позволит использовать пространство имен в событии повышения. –

+1

Недействительный код VB.NET, и нет способа проверить, является ли событие «пустым». Это не C#. Когда у него нет подписчиков, RaiseEvent просто ничего не делает, поэтому вам не нужно помогать. Если вам важно помочь, вы должны создать специальное событие, чтобы вы могли подсчитать количество вызовов AddHandler и RemoveHandler. –

ответ

1

Я нашел ошибку с некоторой помощью. Это должно было сделать еще один экземпляр класса invokecpletedeventsargs, а не поднимать это событие. Я удалил событие и заменил его как личное. Теперь он функционирует. Благодарим вас за все ваши предложения.

Смежные вопросы