Setting Mindate and MaxDate for Datepicker Control

2020-04-11 18:35发布

I'm currently using DatePicker’s control, where I tried to limit the dates to show MinDate & Maxdate. Unfortunately I couldn't find any related method to set the Min and Max days/Month except for Year, I even tried to extends the Controls class to set the Date to be display during it the DatePicker loaded. Is it possible to limit which dates a user can select from a datepicker on a UWP application?

Thanks!

3条回答
Luminary・发光体
2楼-- · 2020-04-11 18:56

If you use DatePicker control (.net Framework >= 4.0) you can bind it also directly in the XAML code like this :


 <DatePicker
            x:Name="datePickr"
            MinWidth="150"
            Margin="10"
            DisplayDateEnd="{Binding Mode=OneWay, Source={x:Static
            System:DateTime.Today}}"/>

and if you use DateTimePicker control from Xceed Extended WPF toolkit you can bind Maximum Property the same way as DisplayDateEnd for DatePicker.

p.s. Don't forget to add folowing to your XAML file header:

xmlns:System="clr-namespace:System;assembly=mscorlib"
查看更多
混吃等死
3楼-- · 2020-04-11 19:05

I assume you're developing on Windows 10 Universal Windows Platform. DatePicker in UWP, you can only set the MinYear and MaxYear. There's 4 datetime control that you can use (Refer to this link)

I would suggest you to use the new Calendar Date Picker which allows you to set MinDate and MaxDate

CalendarDatePicker cdp=new CalendarDatePicker();
cdp.MinYear=DateTime.Now();
cdp.MaxYear=DateTime.AddYears(3);
查看更多
小情绪 Triste *
4楼-- · 2020-04-11 19:08
登录 后发表回答