在 .NET(和 WPF)中,我需要监视Timespan
不包含任何更改事件(如PropertyChanged
. 添加此功能的最佳方法是什么?
问问题
841 次
1 回答
4
假设您将 公开Timespan
为类的属性,您可以INotifyPropertyChanged
像这样实现:
public class MyClass : INotifyPropertyChanged
{
private Timespan _timespan;
public event PropertyChangedEventHandler PropertyChanged;
public Timespan Timespan
{
get { return _timespan; }
set
{
Timespan oldValue = _timespan;
_timespan = value;
if(oldValue != value)
OnPropertyChanged("Timespan");
}
}
protected void OnPropertyChanged(string propertyName)
{
PropertyChangedEventHandler @event = PropertyChanged;
if(@event != null)
@event(
this,
new PropertyChangedEventArgs(propertyName ?? string.Empty)
);
}
}
对属性的任何更改值分配都Timespan
将引发预期事件。
于 2010-04-24T20:27:55.030 回答