Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用标准WPF日期选择器:如何从年份开始?_C#_.net_Xaml_Datepicker - Fatal编程技术网

C# 使用标准WPF日期选择器:如何从年份开始?

C# 使用标准WPF日期选择器:如何从年份开始?,c#,.net,xaml,datepicker,C#,.net,Xaml,Datepicker,我希望下拉列表在开始时显示年份,而不是今天的日期。 备注:没有其他来源显示的“显示模式” dateTimePicker1.Format = DateTimePickerFormat.Custom; dateTimePicker1.CustomFormat = "YYYY dd, mmmm - dddd"; 或: 要获得更详细的解释,请单击。如果您使用WPF toolkit <toolkit:Calendar x:Name="yearCalender" DisplayModeCha

我希望下拉列表在开始时显示年份,而不是今天的日期。 备注:没有其他来源显示的“显示模式”

dateTimePicker1.Format = DateTimePickerFormat.Custom;    
dateTimePicker1.CustomFormat = "YYYY dd, mmmm - dddd";
或:


要获得更详细的解释,请单击。

如果您使用WPF toolkit

<toolkit:Calendar x:Name="yearCalender" DisplayModeChanged="yearCalender_DisplayModeChanged" DisplayMode="Year" />

非常感谢您的回答,但我找到了一个我更满意的解决方案(仅使用standart控件)


私有void\u DatePicker\u日历已打开(对象发送方,RoutedEventArgs e){
//正在查找stadart WPF DatePicker的子级日历
DatePicker DatePicker=(DatePicker)发送方;
Popup Popup=(Popup)datepicker.Template.FindName(“PART_Popup”,datepicker);
System.Windows.Controls.Calendar cal=(System.Windows.Controls.Calendar)popup.Child;
cal.DisplayMode=System.Windows.Controls.CalendarMode.Deced;
}

Good Day and Thx

这可能会有所帮助:格式和自定义格式仅存在于Windows窗体中。WPF没有等价物。
<toolkit:Calendar x:Name="yearCalender" DisplayModeChanged="yearCalender_DisplayModeChanged" DisplayMode="Year" />
private void yearCalender_DisplayModeChanged(System.Object sender, Microsoft.Windows.Controls.CalendarModeChangedEventArgs e)
{       
    yearCalender.DisplayMode = Microsoft.Windows.Controls.CalendarMode.Year;
}
<DatePicker x:Name="_DatePicker" CalendarOpened="_DatePicker_CalendarOpened" />

 private void _DatePicker_CalendarOpened(object sender, RoutedEventArgs e) {
        // Finding the calendar that is child of stadart WPF DatePicker
        DatePicker datepicker = (DatePicker)sender;
        Popup popup = (Popup)datepicker.Template.FindName("PART_Popup", datepicker);
        System.Windows.Controls.Calendar cal = (System.Windows.Controls.Calendar)popup.Child;
        cal.DisplayMode = System.Windows.Controls.CalendarMode.Decade;
    }