gpt4 book ai didi

.net - .net如何以正确的格式显示时间?

转载 作者:行者123 更新时间:2023-12-02 04:04:05 27 4
gpt4 key购买 nike

我有一个VSTO Outlook加载项。此加载项显示带有DateTimePicker控制的winforms窗口,用于选择一天中的时间。我想设置类似于当前Windows时间格式的时间格式(例如任务栏上的时钟)。
为此,我使用以下代码:

this.dateTimePicker1.Format = DateTimePickerFormat.Custom;
this.dateTimePicker1.CustomFormat = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern;

在Windows区域和语言设置中,我在格式和位置中有法语,在键盘和语言中有英语。
结果,在我的表单中,我看到的是7:00,而不是19:00。
CurrentCulture,CurrentUICulture和InstalledUICulture返回“h:mm tt”短期格式,区域性名称为en-US。
我的问题是如何确定Windows以法语格式(HH:mm)显示时间并以DateTimePicker以这种格式显示时间?

- 编辑
当我在单独的控制台应用程序中运行以下代码时
Console.WriteLine(CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern); 
Console.WriteLine(CultureInfo.CurrentCulture.DateTimeFormat.LongTimePattern);
Console.WriteLine(CultureInfo.CurrentCulture.DateTimeFormat.FullDateTimePattern);

它返回
高度:毫米
HH:mm:ss
dddd d MMMM yyyy HH:mm:ss

在Outlook加载项中,类似的代码返回美式格式:

h:mm tt
h:mm:ss tt
dddd,MMMM dd,yyyy h:mm:ss tt

Outlook已设置为使用默认的Windows语言(英语)。

最佳答案

您不能使用自定义格式,而不能使用..

this.dateTimePicker1.Format = System.Windows.Forms.DateTimePickerFormat.Time;

这应该以正确的格式显示时间(即用户选择的时间)

-编辑

如果运行以下命令,您会得到什么?
Console.WriteLine(CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern);
Console.WriteLine(CultureInfo.CurrentCulture.DateTimeFormat.LongTimePattern);
Console.WriteLine(CultureInfo.CurrentCulture.DateTimeFormat.FullDateTimePattern);

将我的“区域和语言”区域设置为“法国(法国)”,我得到了这一点。
HH:mm
HH:mm:ss
dddd d MMMM yyyy HH:mm:ss

关于.net - .net如何以正确的格式显示时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8615132/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com