1
我在TimeEntry窗口3個字段:如何觀察標籤內容?
- 開始時間
- 結束時間
- 長度(雙 - 小時)
所有控件都綁定到一個對象。
我在模型類中實現System.ComponentModel.INotifyPropertyChanged, ,我已經更新與在開始或結束時間改變標籤的內容,但..
我要觀察的變化來阻止修改其將創建低於0的長度。
我應該怎麼做?
我在TimeEntry窗口3個字段:如何觀察標籤內容?
所有控件都綁定到一個對象。
我在模型類中實現System.ComponentModel.INotifyPropertyChanged, ,我已經更新與在開始或結束時間改變標籤的內容,但..
我要觀察的變化來阻止修改其將創建低於0的長度。
我應該怎麼做?
你可以在你的模型類
public class MyModel : INotifyPropertyChanged
{
...
public DateTime StartTime
{
get { return _startTime; }
set
{
if ((EndTime - value).TotalMinutes >= 0) // only allow changes if it doesn't result in < 0 timespan.
{
_startTime = value;
OnPropertyChanged("StartTime", "Length");
}
}
}
public DateTime EndTime
{
get { return _endTime; }
set
{
if ((value - StartTime).TotalMinutes >= 0)
{
_endTime = value;
OnPropertyChanged("EndTime", "Length");
}
}
}
public double Length
{
get { return (EndTime - StartTime).TotalMinutes/60.0; }
}
...
}
實現這種邏輯只是可以肯定。當標籤中的文字改變時,你想執行一些方法嗎? –