Show "empty" TDateTimePicker

try setting the format to a blank space Value.

DateTimePicker1.Format:=' ';

and then in the OnChange method set the format again

procedure TForm1.DateTimePicker1Change(Sender: TObject);
begin
DateTimePicker1.Format:=ShortDateFormat;
end;

You could also try:

DateTimePicker1.Format := '__/__/____';

That way it looks to the end user like a date is required.


I came across this question when looking to see how to handle this.

I'm actually using a TJvDateTimePicker primarily because it displays week numbers in the drop down. I was going to use the 'format trick' suggested by @RRUZ, but have found that the TJvDateTimePicker includes a couple of extra published properties, NullDate and NullText which are used to implement the "format trick".

In my form's constructor I place the code:

dtpOne.NullDate := 0;
dtpOne.NullText := ' '; // empty string doesn't work

All seems to work as you'd expect.