C# WPF工具包,在DatePicker中更改日期格式
DatePicker中的默认日期格式为“yyyy-mm-dd”,但我需要“dd-mm-yyyy”。对我来说不起作用。日期是使用C# WPF工具包,在DatePicker中更改日期格式,c#,wpf,datepicker,toolkit,C#,Wpf,Datepicker,Toolkit,DatePicker中的默认日期格式为“yyyy-mm-dd”,但我需要“dd-mm-yyyy”。对我来说不起作用。日期是使用CultureInfo.CurrentCulture显示的,这是用户在控制面板中选择的Windows区域设置,似乎无法更改。但是,这其实并不重要,因为这是用户首选的日期/时间设置。这是一个非常老的问题(有点错误地标记为“已回答”)。 如果您需要为WPF DatePicker控件使用特定的日期格式,但不想打开它的源代码(实际上可以下载),则始终可以指定整个UI的日期格式,或
CultureInfo.CurrentCulture
显示的,这是用户在控制面板中选择的Windows区域设置,似乎无法更改。但是,这其实并不重要,因为这是用户首选的日期/时间设置。这是一个非常老的问题(有点错误地标记为“已回答”)。
如果您需要为WPF DatePicker控件使用特定的日期格式,但不想打开它的源代码(实际上可以下载),则始终可以指定整个UI的日期格式,或为每个DatePicker控件设置该格式
在我的应用程序中,我在应用程序启动事件中使用了以下内容:
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文章提出上述内容的;我记不清它具体在哪里(或者我相信作者),但无论如何,希望这有帮助
Kirk如果你想为约会对象提供这种格式,你必须这样做:
DatePicker datetimepicker;
datetimepicker.SelectedDate.Value.ToString("yyyy-MM-dd");
datetimepicker.SelectedDate.Value
是一个DateTime对象
,因此您可以根据需要进行操作。谢谢您的回答。选中一个就足以解决我的问题。但我会在将来的应用程序中尝试您的方法。欢迎。我相信问题是关于更改datepicker本身的显示格式。