Я определил метку в Xaml
<Label Text="{Binding DeviceGuid}"/>
установить BindingContext внутри моей страницы
BindingContext = new BluetoothViewModel();
и написал код для метода получения и установки в ViewModel
private string _deviceGuid;
public string DeviceGuid
{
get
{
return _deviceGuid;
}
set
{
if (_deviceGuid != value)
{
_deviceGuid = value;
OnPropertyChanged();
}
}
}
Так вот простая вещь :). Привязка работает, если я изменяю значение внутри ViewModel.
Теперь вот оно:
Существуют некоторые фоновые задачи (или просто другие классы), которые, по моему мнению, должны иметь доступ к этому свойству, и если они его напишут, пользовательский интерфейс должен обновляться автоматически.
Я думаю, что это плохая практика, но я не знаю, как реализовать это иначе.
Я уже пытался создать другой экземпляр модели представления, такой как
BluetoothViewModel a = new BluetoothViewModel();
a.DeviceGuid = "test";
Он вызывает OnPropertyChanged (), но не обновляет интерфейс ...
Заранее спасибо за помощь.