WPF Bindings to MySettings.Default Not Updating When Property Changes (VB.Net)
Posted on 2012-04-03
I recently discovered the User Settings functionality of Visual Studio and thought I would give it a try so that my users can customise colours, fonts etc.
While playing to gain familiarity I have created a Setting called 'ButtonColour' as a system.drawing.color and then, in XAML, created a binding to this setting in the Control Template for the Buttons in my project, using an iValueConverter to convert the color to a System.Windows.Media.Brush.
This works as it should.
I then added a ComboBox, which contains all of the non-system KnownColors, and set the SelectionChanged event to update the ButtonColor setting to that selected from the Combo.
My problem is that although ButtonColor setting is changed and saved, the Buttons on the screen using the bound Control Template do not change colour until they are reloaded.
I would have though that MySettings would implement INotifyPropertyChanged, but it seems not - or if it is it is not firing.
What is the 'correct' way to get my buttons to change colour in real-time as the ButtonColor setting changes?
All help appreciated.