DateTimePicker从年开始

本文关键字:年开始 DateTimePicker | 更新日期: 2023-09-27 18:00:13

这里有几个关于格式化C#DateTimePickers的QA,但似乎没有一个能解决这个问题:

默认行为是,当用户单击DateTimePicker下拉列表时,他从一个月视图开始,顶部有一个滚动条,一次浏览一个月。

从UI,你可以向上移动到年度级别,但我的操作员不是本地的,也不是直观的控件使用。我要求用户输入跨越10年的数据(某些产品的生产日期)。我想从年份开始,这样可以更快/更容易地在正确的任意位置开始。

我可以在年度级别自动开始日历下拉并向下搜索吗?

谢谢。

DateTimePicker从年开始

如果您使用的是WPF,那么我认为您指的是DatePicker控件。

在XAML中:

<DatePicker CalendarOpened="DatePicker_CalendarOpened" />

然后在后面的代码中

using System.Windows;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
private void DatePicker_CalendarOpened(object sender, RoutedEventArgs e)
{
    DatePicker datepicker = (DatePicker)sender;
    Popup popup = (Popup)datepicker.Template.FindName("PART_Popup", datepicker);
    Calendar cal = (Calendar)popup.Child;
    cal.DisplayMode = CalendarMode.Year;
}