У меня есть TextBlock, который выглядит так:
<TextBlock Text="{Binding Name}" />
Это внутри <Canvas>
с DataContext, установленным в MyClient, который находится в ViewModel:
public Client MyClient { get; private set; } // This is a RIA Entity, hence supports INotifyPropertyChanged
public ViewModel() {
MyClient = new Client();
LoadOperation<Client> loadClient = RiaContext.Load<Client>(RiaContext.GetClientsQuery());
loadClient.Completed += new EventHandler(loadClient_Completed);
}
void loadClient_Completed(object sender, EventArgs e) {
MyClient = DB.Clients.Single();
}
Установка MyClient, как указано выше, не вызывает событие PropertyChanged. Таким образом, пользовательский интерфейс никогда не обновляется.