How do you get WPF ViewModel to notify a UI control from code behind?

In a WPF forms app, I have MVVM Validation (using the MVVMValidationHelper, which is excellent) working against a number of fields so that any user interaction with a control triggers validation and applies a simple Validation.ErrorTemplate when the value found to be invalid.
The problems is; changes to the bound VM properties from code behind do not notify the UI that a property is now in an invalid state to apply the ErrorTemplate - The validation is only getting applied to the control when the user is interacting with a particular time.

e.g. User changes value A, which validates and cause the B to become invalid via its rules.  The control bound to B need to now be adorned with the ErrorTempalte.

Is there a way to notify controls bound to properties that have had their validation state changed?


XAML
<TextBox Text="{Binding Xxxxxxx, Mode=TwoWay, ValidatesOnDataErrors=True}" Validation.ErrorTemplate="{StaticResource ValidationTemplate}" />

Open in new window

VM
private string _Xxxxxxx= string.Empty;
public string Xxxxxxx
{
   get { return _Xxxxxxx; }
   set
      {
         if (Set<string>(() => Xxxxxxx, ref _Xxxxxxx, value))
              Validator.Validate(() => Xxxxxxx);
      }
}

Open in new window

Navigator101Asked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
Navigator101Connect With a Mentor Author Commented:
Yes - the issue was around the implementation of the IDataErrorInfo notification - once this was implemented it worked
0
 
apeterCommented:
Have you implemented Interface, "INotifyPropertyChanged" in your viewmodel ?
0
 
apeterCommented:
Glad you solved with another "notification" interface.
0
 
Navigator101Author Commented:
The issue was sorted by someone direct emailing me..
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.