Hey Everyone

Is it possible to disable the dates that appear before todays date in a dateTimePicker control?

I want to put in some validation so that my users can only select days in the future...ie a future appointment date

Any ideas ?


Recommended Answers

All 6 Replies

maybe this will be helpful...try something like (for validation)

if dtpkr.value < dtpkr.value.date then

display error


yourvariable = dtpkr.value

end if

sorry im a beginner to but i think this should work, Gd Lk

I'm not certain what version of Visual Studio you're using - I'm still using 2003 however we have purchased and installed 2008 and I am preparing to start using it in the next week or two..

however in 2003 in your toolbox you have the required field validator you can use - you set the validator to validate the date textbox or whatever you want and in the operator field of the properties you chose greater than or greater than equal if you want them to be able to enter todays date.

you can then insert a validation summary from the toolbox and in error message of your validator you can list the message you want to place in that summary area. So you can say "Date can not be prior to today" and it will tell them what's wrong. You can even insert a second validator and make it required so it will make sure it's also not blank and so on.

you can mess with settings like make the color red etc.

Then in your code you can put in a valid fields check - an example I've used for one of mine is here

Private Sub ValidFields()

        Dim strError As String = "Validating Request."


            cpvRequestedDueDate.ValueToCompare = DateTime.Now.Today.ToShortDateString


        Catch ex As SqlException
            PageUtil.ShortProcessErrors(ex, Session, Me, strError)
            PageUtil.ShowError(Page, strError)
        Catch ex As Exception
            PageUtil.ShortProcessErrors(ex, Session, Me, strError)
            PageUtil.ShowError(Page, strError)
        End Try

    End Sub

in the above example - rqvDueDate is one validator that was inserted to validate due date. That name was set in the id field of the properties.

am realy desperate guys i need the code to control users picking up unwanted date or time. thanx

sorry, i forgot something. i am uing asp.net with vb

datetimepicker.mindate = now

this should do the trick :)

Yes to validate DateTimePicker According to Today's date is possible as follows:
DateTimePicker dateTimePicker = new DateTimePicker();
1. For dates more than today

dateTimePicker.MinDate = DateTime.Today;

dateTimePicker.MinDate = DateTime.Today;

2. For dates less than today

dateTimePicker.MaxDate = DateTime.Today;

dateTimePicker.MaxDate = DateTime.Today;
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, learning, and sharing knowledge.