Is it possible to bind to a value in Properties.Settings.Default in a way that will keep my UI current with the value stored there?
I have a class:
public class FavoritePlayer
{
public string Name
{
get
{
return wpfSample021.Properties.Settings.Default.FavoritePlayer.ToString();
}
set
{
wpfSample021.Properties.Settings.Default.FavoritePlayer = value;
}
}
}
In my XAML, I have a resource:
<local:FavoritePlayer x:Key="fvPlayer"/>
and a binding:
<Label DataContext="{DynamicResource fvPlayer}" Content="{Binding Path=Name}"/>
What I would like is for the data-binding to update any time the property is changed. Is there a way to do this?
You need your properties to implement
INotifyPropertyChanged
in order for bindings to recognise when the property value changes.Conveniently for you,
ApplicationSettingsBase
implementsINotifyPropertyChanged
so you just need to subscribe toPropertyChanged
onProperties.Settings.Default
and raise your ownPropertyChanged
in response.