Is it possible to limit which dates a user can select from a dateTimePicker
on a C# winforms application?
The basic principle for me is this: I have a <
You can set a minimum and a maximum date for the C# WinForms DTP, so if thats what you wish to do, then you can use the MinValue
and MaxValue
variables. You can't pick and choose blocks of dates that are not allowed. This is something you would have to add yourself. There are 2 possible methods of doing this:
Yes, at least MSDN says so. Refer here.
The DateTimePicker
control has MaxDate
and MinDate
properties. Set those, and you can control the range of dates that can be selected. Currently on my Windows XP with Windows Classic theme the unselectable dates do not appear grayed, but this may vary depending on operating system, theme, etc. If you absolutely must gray them, then you will have to subclass the DateTimePicker control and do the (or part of the) painting yourself.
You can set up the date restrictions in the following manner
dateTimePicker1.MinDate = DateTime.Today.AddDays(-2);
dateTimePicker1.MaxDate = DateTime.Today.AddDays(2);
In these case only the 5 available dates would be selectable for the user and the rest is not available. You could set up these values in the selectedindex changed event for the combobox and restrict it on the basis of your requirement/logic.
Use the MinDate and MaxDate properties.
dateTimePicker.MinDate = DateTime.Now;
dateTimePicker.MaxDate = DateTime.Now.AddDays(15);
(render on a french Windows 7)