在使用类里写,比如.
using System;
using System.ComponentModel;namespace CSCnsl {
class Person : INotifyPropertyChanged {
private string name;
public string Name {
get { return name; }
set { name = value; OnPropertyChanged("Name"); }
} public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName) {
if (PropertyChanged != null) {
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
class Program {
static void Main(string[] args) {
Person p = new Person();
p.PropertyChanged += p_PropertyChanged;
p.Name = "改下名字";
} static void p_PropertyChanged(object sender, PropertyChangedEventArgs e) {
Console.WriteLine("在我这里写具体的操作");
}
}
}
using System;
using System.ComponentModel;namespace CSCnsl {
class Person : INotifyPropertyChanged {
private string name;
public string Name {
get { return name; }
set { name = value; OnPropertyChanged("Name"); }
} public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName) {
if (PropertyChanged != null) {
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
class Program {
static void Main(string[] args) {
Person p = new Person();
p.PropertyChanged += p_PropertyChanged;
p.Name = "改下名字";
} static void p_PropertyChanged(object sender, PropertyChangedEventArgs e) {
Console.WriteLine("在我这里写具体的操作");
}
}
}
{
static void Main(string[] args)
{
Person person = new Person();
person.PropertyChanged += Message;
person.Name = "Name";
} //名字改变后的逻辑写在这个方法里
private static void Message(object sender, PropertyChangedEventArgs e)
{
Console.WriteLine("Name Changed: " + e.Name);
Console.Read();
}
} public class Person : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged; private string name;
public string Name
{
get { return name; }
set
{
name = value;
if (name != string.Empty)
OnPropertyChanged(name);
}
} protected void OnPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}