2012-12-04 232 views
3

我有一個DateTime選擇器到達時間添加到列表中,我對此2個問題:日期時間選擇器C#格式

  1. 我怎樣才能得到它顯示的日期一樣12-Jan-2012而不是12/01/12
  2. 我怎樣才能讓它顯示日期後的時間,但不是當前時間,因爲這是什麼顯示atm。

我當前的代碼是不是很先進的只是:

theVisit.ArrivalTime = DateTimePicker1.Value 

回答

6

像這樣的東西能顯示日期和時間:

DateTimePicker1.Value.ToString("d-MMM-yyyy hh:mm:ss"); 

若要覆蓋默認的DateTimePicker設置,你可以做這個:

DateTimePicker1.Format = DateTimePickerFormat.Custom; 
DateTimePicker1.CustomFormat = "d-MMM-yyyy hh:mm:ss"; 

你可以顯示一個不同的時間通過修改格式字符串,例如:

DateTimePicker1.CustomFormat = "d-MMM-yyyy 12:00:00"; 

甚至

DateTime otherTime = DateTime.Now; 
DateTimePicker1.CustomFormat = "d-MMM-yyyy " + otherTime.ToString("hh:mm:ss"); 
+0

@嘿,我得到的錯誤不能隱式地將類型字符串轉換爲system.datetime – TAM

1

你要找的日期時間格式的字符串。他們在MSDN上有一篇很棒的文章。 有兩種類型:

  1. Standard DateTime Formats
  2. Custom DateTime Formats

您可以使用這些構建日期時間要看你怎麼想它。 對於你的榜樣,你可以使用:

DateTimePicker1.Value.ToString("dd-MMM-yyyy hh:mm:ss") 
3

對於它在拾取該格式顯示,設置如下

dateTimePicker1.Format = DateTimePickerFormat.Custom; 
dateTimePicker1.CustomFormat = "dd-MMM-yyyy hh:mm:ss"; 
0

第一屬性,改變如何你的DateTimePicker顯示DateTime是否:

DateTimePicker1.CustomFormat = "d-MMM-yyyy hh:mm:ss"; 
DateTimePicker1.Format = System.Windows.Forms.DateTimePickerFormat.Custom; 

您的代碼:

theVisit.ArrivalTime = DateTimePicker1.Value; 

不會改變,因爲DateTimePicker1.Value沒有任何區別,只是根據您的格式顯示。

如果您希望控件顯示一個特定的時間(而不是當前的時間),你必須給那些重視控制:

DateTimePicker1.Value = new DateTime(2012, 12, 21, 23, 59, 59); 

否則,它會顯示當前時間,創作形式。