-
-
Notifications
You must be signed in to change notification settings - Fork 18
ExampleUsage
Simon Cropp edited this page Jul 30, 2012
·
2 revisions
public class Person : INotifyPropertyChanging
{
public string GivenName { get; set; }
public string FamilyName { get; set; }
public event PropertyChangingEventHandler PropertyChanging;
public string FullName
{
get { return GivenName + " " + FamilyName; }
}
}
public class Person : INotifyPropertyChanging
{
private string familyName;
private string givenName;
public event PropertyChangingEventHandler PropertyChanging;
public string FamilyName
{
get
{
return familyName;
}
set
{
if (!Object.Equals(familyName, value))
{
OnPropertyChanging("FamilyName");
OnPropertyChanging("FullName");
familyName = value;
}
}
}
public string GivenName
{
get
{
return givenName;
}
set
{
if (!Object.Equals(givenName, value))
{
OnPropertyChanging("GivenName");
OnPropertyChanging("FullName");
givenName = value;
}
}
}
public string FullName
{
get
{
return GivenName + " " + FamilyName;
}
}
public virtual void OnPropertyChanging(string propertyName)
{
var propertyChanging = PropertyChanging;
if (propertyChanging != null)
{
propertyChanging(this, new PropertyChangingEventArgs(propertyName));
}
}
}