Я пытаюсь обновить свой интерфейс, когда изменяется свойство в моем классе BL. Пожалуйста, можете кто-нибудь посоветовать лучший способ сделать это в vb.net.Как обновить интерфейс при изменении свойства
-1
A
ответ
0
Не совсем точный вопрос, поэтому я объясню стандартный способ (на мой взгляд).
Внесите флаг INotifyPropertyChanged
в свой класс и обработайте событие PropertyChanged
вашего объекта.
Сначала класс объекта, который содержит свойство в вопросе:
Public Class MySweetClass
Implements System.ComponentModel.INotifyPropertyChanged
Private _MyProperty As String
Public Property MyProperty As String
Get
Return _MyProperty
End Get
Set(value As String)
_MyProperty = value
RaiseEvent PropertyChanged(Me, New System.ComponentModel.PropertyChangedEventArgs("MyProperty"))
End Set
End Property
Public Event PropertyChanged(sender As Object, e As System.ComponentModel.PropertyChangedEventArgs) Implements System.ComponentModel.INotifyPropertyChanged.PropertyChanged
End Class
Обратите внимание, что PropertyChanged
событие возникает, как только значение изменений свойств.
В вашей форме обрабатывать это событие:
Public Class Form1
Private WithEvents MySweetObject As MySweetClass
Private Sub MySweetObject_PropertyChanged(sender As Object, e As System.ComponentModel.PropertyChangedEventArgs) Handles MySweetObject.PropertyChanged
'Update gui here
End Sub
End Class
Это позволяет обновлять графический интерфейс пользователя всякий раз, когда изменяется значение.
+0
Спасибо за помощь, я предоставлю больше информации в будущем, но это работает! – DevPenguin
Смежные вопросы
- 1. Как обновить пользовательский интерфейс при изменении файла
- 2. Как обновить пользовательский интерфейс при изменении местоположения?
- 3. EaselJS: Обновить цвет формы при изменении свойства
- 4. Обновить значение свойства при изменении файла внешнего свойства, весенняя загрузка
- 5. Как обновить элемент DOM при изменении свойства внутри модели?
- 6. Обновить текстовое поле при изменении значения Datacontext
- 7. Как обновить MPMusicPlayerController при изменении песни
- 8. Изменение свойства свойства при программном изменении SelectedIndex
- 9. Обновить пользовательский интерфейс при изменении кода привязки источника
- 10. Как обновить Angular $ watchCollection при изменении атрибута
- 11. Вызов OnPropertyChanged при изменении свойства свойства
- 12. Как обновить свойства CMFCPropertyGridCtrl?
- 13. Активировать элемент при изменении свойства?
- 14. Обновить контроль при изменении ориентации?
- 15. Обновить страницу при изменении файла
- 16. Обновить таблицу при изменении dropdownoption
- 17. Обновить просмотр при изменении параметра
- 18. Как создать настраиваемое событие при изменении свойства?
- 19. Как запустить анимацию при изменении свойства ViewModel?
- 20. Как получить уведомление при изменении свойства массива?
- 21. Основные данные Изменение значения свойства при изменении другого свойства
- 22. Как изменить уведомление об изменении свойства при изменении подзадачи?
- 23. Обновить Jframe при изменении данных
- 24. Обновить представление при изменении области
- 25. Обновить страницу при изменении хэша
- 26. Обновить фрагмент при изменении настроек пользователя
- 27. GWT - обновить виджет при изменении java.util.List
- 28. Как обновить TextView при изменении SharedPreference?
- 29. Как обновить NSCollectionViewItem при изменении модели данных?
- 30. как обновить просмотр при изменении страницы?
, пожалуйста, покажите пример того, что происходит или не происходит, и опишите, что это за вещи: пользовательский контроль? пользовательский контроль? унаследованный контроль? std контроль? – Plutonix
Я запускаю резервную копию sql и используя SqlInfoMessage, чтобы получить процентные сообщения полной печати. На этом этапе я обновляю общедоступное свойство в своем классе, чтобы мне было нужно значение текстового поля в моем пользовательском интерфейсе. Однако я не уверен, как обновить свой интерфейс, как только свойство изменится, а не перейдет из пустого текстового поля в полный вывод резервных печатных сообщений. – DevPenguin
если 'myTextBox.Text = someTextToShow' не работает, тогда вы должны поделиться этим кодом; если он находится в каком-то контуре, Windows не будет выполнять каждое обновление и скорее является индикатором выполнения. – Plutonix