您需要提供更改机制:
加:
public static int Kills{
get{ return kills; }
set{
kills = value;
//change code here...
}
}
Run Code Online (Sandbox Code Playgroud)
只set使用这个公共Kills财产.kills如果可能,请勿直接更改实例成员.但总有一个例外.
创建一个属性,它允许在其中进行逻辑。那将是添加此类功能的好地方:
private static int kills = 0;
public static int Kills
{
get
{
return kills;
}
set
{
this.kills = value;
this.OnVarChange();
}
}
Run Code Online (Sandbox Code Playgroud)
更好的选择是实现INotifyPropertyChanged,这是一个界面,UI 和框架的其他部分可以选择并采取行动。
public class X : INotifyPropertyChanged
{
private int kills = 0;
public int Kills
{
get
{
return kills;
}
set
{
this.kills = value;
this.OnPropertyChanged();
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged([System.Runtime.CompilerServices.CallerMemberName] string propertyName = "")
{
PropertyChangedEventHandler pc = this.PropertyChanged;
if (pc != null)
{
pc(this, new PropertyChangedEventArgs(propertyName));
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17027 次 |
| 最近记录: |