In C#, the interface is used notify clients, typically binding clients, that a property value has changed.
For example, consider an Employee class object with a property called FirstName. To provide property-change notification, the Employee class type implements the interface and raises a PropertyChanged event when FirstName is changed.
For change notification to occur in a binding between a bound client and a data source, your bound type should either:
· Implement the interface (preferred).
· Provide a change event for each property of the bound type.
Do not do both.
For example, in below we have defined a property ‘FirstName’
private string _firstName;
public string FirstName
_firstName = value;
Now, we have implementing the interface
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName)
// occurring event private void OnPropertyChanged(PropertyChangedEventArgs e)
MessageBox.Show(“Changed in First Name ”+FirstName);
I think in above example you are understand about raises event when 'FirstName' property values are changed.
For more details , you click here