WPF 日历禁用日期选择

Posted

技术标签:

【中文标题】WPF 日历禁用日期选择【英文标题】:WPF Calendar disable date selection 【发布时间】:2019-05-17 14:35:08 【问题描述】:

大家好,我想要一种方法来禁用 WPF 日历中的日期选择。

我尝试了禁用的属性,但我想从日期导航,我默认选择了日期并且不希望用户能够选择日期。

这是我的日历代码:

<Calendar x:Name="show_Calendar" IsTodayHighlighted="False" SelectionMode="MultipleRange" />

我选择这样的日期:

SelectedDatesCollection dates = new SelectedDatesCollection(show_Calendar);
foreach (var item in TaskManagerClass.revisionesTarea(tareaActiva.Id))

   if (item.DiaRevision.HasValue)
     dates.Add(item.DiaRevision.Value);

我希望用户能够在月份之间导航,但不能从日历中选择日期。

【问题讨论】:

【参考方案1】:

您可以通过使用StyleCalendarDayButtonIsHitTestVisible 属性设置为false 来禁用日期选择:

<Calendar x:Name="show_Calendar" IsTodayHighlighted="False" SelectionMode="MultipleRange">
    <Calendar.CalendarDayButtonStyle>
        <Style TargetType="CalendarDayButton">
            <Setter Property="IsHitTestVisible" Value="False" />
        </Style>
    </Calendar.CalendarDayButtonStyle>
</Calendar>

【讨论】:

以上是关于WPF 日历禁用日期选择的主要内容,如果未能解决你的问题,请参考以下文章