2011-05-05 58 views
4

要求的格式爲「2010 1月22日」,以顯示日期。datepicker沒有選擇自定義日期格式?

我已經編寫

calanderFrom.Format = DateTimePickerFormat.Short; 
calanderFrom.CustomFormat = "dd MMM yyyy"; 

,但日期是在 「2011/5/5」 格式仍然來了。請指導我如何更換fromat。

感謝

+0

它在窗體上顯示該方式,還是以該格式返回到您的代碼? – Mikecito 2011-05-05 06:42:09

+0

您可以按照原樣捕捉日期並稍後格式化。這就是我的做法。但不知道爲什麼它不在這種情況下工作。 – 2011-05-05 06:42:37

回答

10

更換

calanderFrom.Format = DateTimePickerFormat.Short; 

calanderFrom.Format = DateTimePickerFormat.Custom; 
+0

+1你是對的好友。 http://msdn.microsoft.com/en-us/library/system.windows.forms.datetimepicker.format%28v=VS.100%29.aspx – 2011-05-05 06:50:00

3

不要踢自己:

calanderFrom.Format = DateTimePickerFormat.Custom; 

使用DateTimePickerFormat.Custom值,而不是DateTimePickerFormat.Short

0

你必須格式設置爲System.Windows.Forms.DateTimePickerFormat.Custom

你的代碼更改爲:

calanderFrom.Format = System.Windows.Forms.DateTimePickerFormat.Custom; 
calanderFrom.CustomFormat = "dd MMM yyyy"; 
1

使用RFC1123 patternString.Format("{0:r}", dt);

Standard Date and Time Format Strings

說明符的DateTimeFormatInfo屬性模式值(EN-US區域性)

t ShortTimePattern h:mm tt 
d ShortDatePattern M/d/yyyy 
T LongTimePattern  h:mm:ss tt 
D LongDatePattern  dddd, MMMM dd, yyyy 
f (combination of D and t) dddd, MMMM dd, yyyy h:mm tt 
F FullDateTimePattern  dddd, MMMM dd, yyyy h:mm:ss tt 
g (combination of d and t) M/d/yyyy h:mm tt 
G (combination of d and T) M/d/yyyy h:mm:ss tt 
m, M MonthDayPattern  MMMM dd 
y, Y YearMonthPattern MMMM, yyyy 
r, R RFC1123Pattern ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (*) 
s SortableDateTi­mePattern yyyy'-'MM'-'dd'T'HH':'mm':'ss (*) 
u UniversalSorta­bleDateTimePat­tern yyyy'-'MM'-'dd HH':'mm':'ss'Z' (*) 
+1

這與問題無關。自定義格式字符串似乎是正確配置,唯一的問題是,'DateTimePickerFormat.Short'代替自定義字符串(因爲它沒有設置成'DateTimePickerFormat.Custom')。 – Groo 2011-05-05 06:49:44

+0

但他可以用* String.Format *來改變它。 RFC1123Pattern就是這樣。 – 2011-05-05 06:51:40

+0

*需求的格式爲「2010 1月22日」 *顯示日期。 – Groo 2011-05-05 06:55:52