日付絞り込み
検索開始日と検索終了日
public ReactiveProperty<DateTime> SearchStartDate;
public ReactiveProperty<DateTime> SearchEndDate;
public SearchClass(){
this.SearchStartDate = new ReactiveProperty<DateTime>();
this.SearchEndDate= new ReactiveProperty<DateTime>();
this.SearchStartDate.Subscribe(ConfirmSearchDate)
this.SearchEndDate.Subscribe(ConfirmSearchDate)
}
private void ConfirmSearchDate(DateTime date)
{
if (SearchStartDate.Value > SearchEndDate.Value)
{
SearchStartDate.Value = date;
SearchEndDate.Value = date;
}
}
常に開始日<終了日となるように設定する。
ReactivePropertyっぽく書くなら、
this.SearchStartDate.Where(x => x > this.SearchEndDate.Value).Subscribe(x => this.SearchEndDate.Value = x);
という書き方もできる。
が、日付に関して言えば処理が共通なのでメソッドでいい気がする。
コメント