如何在WPF DateTimePick中设置多个月的BlackOutDates
本文关键字:BlackOutDates 设置 WPF DateTimePick | 更新日期: 2023-09-27 18:15:24
我需要设置多个月的BlackOutDates。
例如,在选择月份(即2014年1月)时,我想只显示某些停电日期。另一方面,对于二月,我想显示一些与一月不同的其他黑色日期。
但是我在WPF DateTimePick中找不到任何属性,它可以显式返回"月份",这些月份在使用ViewModel绑定列表时绑定到DateTimePick控件。
是否有办法为每个月设置明确的停电日?
的问候乌斯曼
不可能直接绑定BlackOutDates集合。取而代之的是一个助手类。通常将使用附加属性来处理此场景。在属性的回调中手动映射BlackoutDates。
http://wpfplayground.com/2014/07/28/wpf-datepicker-blackoutdates-data-binding/要从日期选择器中获得通知,当Month更改时,使用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)) };
}
}