我尝试在我的一个winform应用程序(VB .net)的开头设置文化信息。代码是:
Public Sub New()
System.Threading.Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("en-CA")
System.Threading.Thread.CurrentThread.CurrentUICulture = New System.Globalization.CultureInfo("en-CA")
' This call is required by the Windows Form Designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
End Sub
但是,后续表单中的日期时间选择器显示“dd-MM-yyyy”类型的日期格式。我怎么设置是对的?我缺少哪些步骤。
答案 0 :(得分:1)
不幸的是,新线程的默认文化没有应用程序范围的设置。线程的默认区域性由Windows在创建时设置。
另请查看此KB Article,这是旧的,但我相信仍然适用。 DatePicker使用Windows区域设置而不是currentCulture。
您可以直接更改DatePicker的设置,使其按您的意愿显示。
类似的东西:
DatePicker1.Format = DateTimePickerFormat.Custom
DatePicker1.CustomFormat = "MM-dd-yyyy"
我想如果我有很多这样的话,我可以让我自己的类从DatePicker继承并在构造函数中设置它。