簡體   English   中英

WPF工具包,在DatePicker中更改日期格式

[英]WPF toolkit, change date format in DatePicker

DatePicker中的默認日期格式為“yyyy-mm-dd”,但我需要“dd-mm-yyyy”。 這個解決方案對我不起作用。

這是一個非常古老的問題(標記為“回答”有些錯誤)。 如果您需要為WPF DatePicker控件使用特定的日期格式,但又不想打開它的源代碼(事實上,可以下載),您始終可以指定整個UI的DateFormat ,或為每個DatePicker控件設置它。

在我的應用程序中,我在Application_Startup事件中使用了以下內容:

Private Sub Application_Startup(ByVal sender As Object, ByVal e As System.Windows.StartupEventArgs) Handles MyBase.Startup

   ' other application initialization code here

   Dim culInfo As Globalization.CultureInfo = New System.Globalization.CultureInfo("en-us")
   Dim dtinfo As Globalization.DateTimeFormatInfo = New System.Globalization.DateTimeFormatInfo() With {
       .ShortDatePattern = "dd-MMM-yyyy",
       .ShortTimePattern = "hh:mm:ss tt",
       .TimeSeparator = ":",
       .MonthNames = System.Globalization.CultureInfo.InvariantCulture.DateTimeFormat.MonthNames(),
       .AbbreviatedMonthNames = System.Globalization.CultureInfo.InvariantCulture.DateTimeFormat.AbbreviatedMonthNames(),
       .DateSeparator = "-"}

 culInfo.DateTimeFormat = dtinfo
 System.Threading.Thread.CurrentThread.CurrentCulture = culInfo

請注意,這將在您的應用程序的任何位置設置短日期格式的格式(這是我想要的,而不是通過將文化應用於日期選擇器的每個實例。我想出了以上基礎在另一個StackOverflow帖子上;我不記得確切的位置(或者我相信作者),但無論如何,希望這有幫助!

柯克

如果您想將該格式提供給您的日期,您必須執行以下操作:

DatePicker datetimepicker;
datetimepicker.SelectedDate.Value.ToString("yyyy-MM-dd");

datetimepicker.SelectedDate.Value是一個DateTime Object因此您可以根據需要進行操作。

使用CultureInfo.CurrentCulture顯示日期,這是用戶在控制面板中選擇的Windows區域設置,似乎無法更改。 然而,它應該不重要,因為它是用戶首選的日期/時間設置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM