При использовании объявления WithEvents вместо AddHanlder, какой код должен быть отменен для отмены (removeHandler) для события? Это просто установить переменную WithEvents в Nothing? Достаточно ли этого (Framework wise)?Отменить регистрацию события, используя объявление WithEvents
1
A
ответ
0
Предположим, у меня есть форма, которую я показываю ненадолго, а затем она уходит, но она подписывается на мою основную модель домена, чтобы получать обновления об изменениях. Я мог бы иметь такой код:
Private WithEvents _model As WeatherModel
Public Sub New(model As WeatherModel)
_model = model
End Sub
Private Sub WeatherModel_Update(sender As Object, e As WeatherUpdateEventArgs) _
Handles _model.WeatherUpdate
'Handle updated weather conditions
End Sub
Поскольку модель у меня есть ссылка на утаишь-жить со мной, если я не отписать свой обработчик события, он будет вызывать эту форму, чтобы не быть мусора. В этом случае я хочу, чтобы я сделал _model = Nothing
в своем обработчике событий FormClosing
.
В случае, если и форма, и объект WithEvents
имеют одинаковое время жизни (т. Е. Выходят за пределы области действия одновременно) или существуют на протяжении всего срока службы приложения, вам не нужно об этом беспокоиться.
Смежные вопросы
- 1. Android EventBus - Отменить регистрацию из определенного события
- 2. Отменить регистрацию зарегистрированного события filewatcher не работает
- 3. Отменить регистрацию изменений оракула
- 4. Как отменить регистрацию c2dm?
- 5. Как отменить регистрацию датчика?
- 6. Как отменить регистрацию всех обработчиков для события формы?
- 7. Мне нужно отменить регистрацию событий в asp.net
- 8. Отменить регистрацию BroadcastReceiver на Android
- 9. Как отменить регистрацию MediaButtonReceiver onDestroy?
- 10. Как отменить регистрацию выбранный javascript
- 11. Eventbus - как отменить регистрацию POJO?
- 12. Отменить регистрацию для одиночной отправки?
- 13. Как отменить регистрацию конкретных onareatouch
- 14. Отменить регистрацию типа удаленного доступа?
- 15. Как отменить регистрацию Push Notification?
- 16. Отменить регистрацию плагина в Chart.js
- 17. , как отменить регистрацию пользователя программного
- 18. Отменить регистрацию PhoneStateListener из BroadcastReceiver
- 19. Как отменить регистрацию событий в атомной оболочке?
- 20. Отменить регистрацию класса из-под контроля - WPF
- 21. Как правильно отменить регистрацию обработчика событий
- 22. AppFabric - Etw - Невозможно отменить регистрацию поставщика трассировки
- 23. Отменить объявление CSS
- 24. Отменить регистрацию виджета WordPress с темы
- 25. Как отменить регистрацию gcm в расширении chrome
- 26. Как отменить регистрацию каталога как Git root?
- 27. Как облегчить регистрацию периодического события?
- 28. Как отменить регистрацию COM-сервера Python
- 29. Как отменить регистрацию объекта в управляемом объекте?
- 30. Отменить регистрацию DLL с помощью regsvr32
Вы не можете незарегистрировать события статического связывания. – adatapost
Почему вы пытаетесь это сделать? –
@AVD: Почему вы говорите это как комментарий? Это ответ? Вы имеете в виду, что 2 объекта связаны вечно? –