
نوشته شده توسط
sh
دوست عزیز (Plus) سلام.
وقتی از این DateTimePicker در ویندوز 10 با تاریخ تنظیم شده به فرمت شمسی استفاده میشه کد زیر برای ذخیره در دیتا بیس مقدار فارسی را برمیگرداند
MessageBox.Show(dateTimeSelector1.Value.ToString() );
البته DateTimePicker استاندارد موجود در ویژوال استدیو نیز همین رفتار را نشان می دهد که با قطعه کد ذیل در روال Form_Load قابل حل می باشد.
System.Threading.
Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture;
لیکن ظاهر کامپوننت طراحی شده توسط شما بصورت تاریخ میلادی تغییر می کند که جای اصلاح دارد
با سلام،
متد ToString مشخصه Value که از نوع DateTime هست مربوط به .NET Framework هست و ربطی به این کنترل نداره. شما اگر تاریخ رو با فرمت میلادی میخواید بجای تغيير Culture ترد جاري كه همه چیز رو تغییر میده کافیه به صورت زیر InvariantCulture رو به متد ToString ارسال کنید:
DateTime? value = dateTimeSelector1.Value;
if (value.HasValue) {
MessageBox.Show(value.Value.ToString(CultureInfo.I nvariantCulture));
}