C# WinApp สอบถามเรื่อง DateTimePicker เราสามารถกำหนดให้ค่าเป็น en-US th-TH ได้ไม๊ครับ
Code (VB.NET)
Dim ThaiCultureInfo As CultureInfo = System.Globalization.CultureInfo.GetCultureInfo("th-TH")
DateTimePicker1.Format = DateTimePickerFormat.Custom
Dim formats As String() = DateTimePicker1.Value.GetDateTimeFormats(ThaiCultureInfo)
DateTimePicker1.CustomFormat = formats(9)
แบบนี้ได้ไหมครับ
Date :
2016-09-27 18:11:56
By :
PEBBLE
พอดีผมว่าจะทำ DatetimeRegionInfo แบบที่เลือกภาษาได้เลย
จะได้สะดวกต่อการใช้งานครับ
ปกติก็ใช้
Code (C#)
System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
System.Threading.Thread.CurrentThread.CurrentCulture = cultureInfo;
System.Threading.Thread.CurrentThread.CurrentUICulture = cultureInfo;
ก็เลยอยากลองเอามาทำเป็น Usercontrol ดู
Code (C#)
public class DatetimeRegionInfo:System.Windows.Forms.DateTimePicker
{
public enum CultureName
{
Thailand, EngishUS, Spanish, Chinese, Japanese, Korean, German, Hungarian, Georgian
}
private CultureName _CultureName;
[System.ComponentModel.Browsable(true)]
[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Always)]
[System.ComponentModel.Category("Behavior")]
[System.ComponentModel.Description("Select Region format of datetime")]
public CultureName cultureName
{
get { return _CultureName; }
set
{
_CultureName = value;
}
}
protected override void OnValueChanged(EventArgs eventargs)
{
base.OnValueChanged(eventargs);
string strCultureName = "";
switch (_CultureName)
{
case CultureName.Chinese:
strCultureName = "zh-CN";break;
case CultureName.EngishUS:
strCultureName = "en-US";break;
case CultureName.Georgian:
strCultureName = "ka-GE";break;
case CultureName.German:
strCultureName = "de-DE";break;
case CultureName.Hungarian:
strCultureName = "hu-HU";break;
case CultureName.Japanese:
strCultureName = "ja-JP";break;
case CultureName.Korean:
strCultureName = "ko-KR";break;
case CultureName.Spanish:
strCultureName = "es-ES";break;
case CultureName.Thailand:
strCultureName = "th-TH";break;
}
// งง ว่าจะให้แปลงเป็น string แล้ว แปลงกลับเป็น DateTime อีกเพื่อ ?
CultureInfo ci = new CultureInfo(strCultureName);
DateTimeFormatInfo info = ci.DateTimeFormat;
base.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
base.CustomFormat = base.Value.GetDateTimeFormats(ci)[9];
base.Value = DateTime.Parse(base.Value.ToString());
}
}
Date :
2016-09-28 08:41:50
By :
lamaka.tor
Date :
2016-09-28 09:43:30
By :
mr.win
Load balance : Server 04