Imports System.Globalization
Imports System.Threading
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Thread.CurrentThread.CurrentUICulture = New CultureInfo("th-TH")
Label1.Text = Now.ToString("dd-MM-yyyy")
End Sub
End Class
แล้วผมก็ไปตั้งรูปแบบวันที่ของผมใน control panel เป็น แบบ en-US ครับ
ทีนี้พอผมกดรันโปรแกรม
ทำไมมันถึงยังแสดงเป็น 09-05-2013 ละครับ
ปกติน่าจะเป็น 09-05-2556 ใช่ไหมครับ
หรือว่าผมเข้าใจอะไรผิดไปครับ ??
Tag : .NET, VB.NET
Date :
2013-05-09 12:34:19
By :
CPU4Core
View :
7345
Reply :
7
No. 1
Guest
Code (VB.NET)
Label1.Text = Now.ToString("dd-MM-yyyy", New System.Globalization.Cultureinfo("th-TH"))
Dim calture As New System.Globalization.CultureInfo("th-TH")
Dim dtInfo As DateTimeFormatInfo = calture.DateTimeFormat
GetType(System.Globalization.DateTimeFormatInfo).GetField("calendar",
Reflection.BindingFlags.Public Or
Reflection.BindingFlags.Instance Or
Reflection.BindingFlags.NonPublic).SetValue(dtInfo, New ThaiBuddhistCalendar())
System.Threading.Thread.CurrentThread.CurrentCulture = calture
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat = dtInfo
MsgBox(DateTime.Now)
Dim calture As New System.Globalization.CultureInfo("th-TH")
Dim dtInfo As DateTimeFormatInfo = calture.DateTimeFormat
Info.DayNames = New String() {"ทิตย์กินหอย", "วันจันทร์", "วันอังคาร", "พุธ", "สบายดี", "วันศุกร์", "เสาร์กินเบียร์"} '*****
GetType(System.Globalization.DateTimeFormatInfo).GetField("calendar",
Reflection.BindingFlags.Public Or
Reflection.BindingFlags.Instance Or
Reflection.BindingFlags.NonPublic).SetValue(dtInfo, New ThaiBuddhistCalendar())
GetType(System.Globalization.CultureInfo).GetField("calendar",
System.Reflection.BindingFlags.Public Or
System.Reflection.BindingFlags.Instance Or
System.Reflection.BindingFlags.NonPublic).SetValue(calture, New ThaiBuddhistCalendar())
System.Threading.Thread.CurrentThread.CurrentCulture = calture
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat = dtInfo
MsgBox(DateTime.Now)
MsgBox(String.Join(" ", Info.DayNames.ToArray)) '*****