我需要将BlackOutDates设置为多个月。
例如,在选择月份(即2014年1月)时,我只想显示某些限制日期。另一方面,对于febraury,我想展示一些与1月份不同的其他黑色日期。
但我找不到WPF DateTimePick中的任何属性,它可以显式返回在使用ViewModel进行List绑定时绑定到DateTimePick控件的“月份”。
有没有办法,为每个月设置明确的BlackOutDays。
此致 乌斯曼
答案 0 :(得分:0)
无法直接绑定BlackOutDates集合。相反,助手类会发挥魔力。通常附加属性将用于处理此方案。在属性的回调中做BlackoutDates的手动映射。详细说明见下面的链接。
http://wpfplayground.com/2014/07/28/wpf-datepicker-blackoutdates-data-binding/
要在更改月份时从日期选择器获取通知,请使用DisplayDate属性。以两种方式绑定此属性。并且您可以在更改的属性上更新您的黑色日期集合。
private void OnPropertyChanged(object sender, PropertyChangedEventArgs e)
{
if (e.PropertyName == "DisplayDate")
{
BlackOutDates = new List<DateTime> { DisplayDate.Date.AddDays(randm.Next(1, 5)), DisplayDate.AddDays(randm.Next(1, 5)) };
}
}