I have a datetimepicker which on loading of windows form shows me format in \'MM-dd-yyyy\',
as follows:
Ensure that control Format property is properly set to use a custom format:
DateTimePicker1.Format = DateTimePickerFormat.Custom
Then this is how you can set your desired format:
DateTimePicker1.CustomFormat = "dd-MM-yyyy"
You can set CustomFormat property to "dd-MM-yyyy" in design mode and use dateTimePicker1.Text property to fetch string in "dd/MM/yyyy" format irrespective of display format.
Ammending as "optional Answer". If you don't need to programmatically solve the problem, here goes the "visual way" in VS2012.
In Visual Studio, you can set custom format directly from the properties Panel:
First Set the "Format" property to: "Custom"; Secondly, set your custom format to: "dd-MM-yyyy";
Try this,
string Date = datePicker1.SelectedDate.Value.ToString("dd-MMM-yyyy");
It worked for me the output format will be '02-May-2016'
You could easily use:
label1.Text = dateTimePicker1.Value.Date.ToString("dd/MM/yyyy")
and if you want to change '/' or '-', just add this:
label1.Text = label1.Text.Replace(".", "-")
More info about DateTimePicker.CustomFormat Property: Link