PDA

View Full Version : سوال: تبدیل تاریخ به روزهای هفته



senter1092
شنبه 08 اردیبهشت 1397, 11:20 صبح
سلام دوستان من یه برنامه به زبان #Cنوشتم حالا میخوام وقتی یک تاریخ رو وارد میکنم بگه اون تاریخ چه روزی از هفته است ممنون میشم کمکم کنید

رامین مرادی
شنبه 08 اردیبهشت 1397, 11:40 صبح
سلام. خدمت شما



DateTime dmiladi2 = new DateTime();
dmiladi2 = p.ToDateTime(1397, 2, 8, 0, 0, 0, 0);
textbox1.Text=dmiladi2.DayOfWeek.ToString();

senter1092
شنبه 08 اردیبهشت 1397, 14:42 عصر
سلام. خدمت شما



DateTime dmiladi2 = new DateTime();
dmiladi2 = p.ToDateTime(1397, 2, 8, 0, 0, 0, 0);
textbox1.Text=dmiladi2.DayOfWeek.ToString();




ممنون فقط این باید از کامپوننت خاصی استفاده کنم؟

senter1092
شنبه 08 اردیبهشت 1397, 15:00 عصر
این p رو کجا تعریف کردین آیا نیاز به کامپوننتی داره ؟

رامین مرادی
شنبه 08 اردیبهشت 1397, 15:06 عصر
عذر میخوام یادم رفت بنویسم. نه کامپوننت نیست

قبل از کدهای بالا

PersianCalendar p=new PersianCalendar ();

رو اضافه کنید

senter1092
شنبه 08 اردیبهشت 1397, 15:16 عصر
persian calender رو سیستم من اجراش نمیکنه کتابخونه ای یافایل dll رو باید به پروژه اضافه کنم

senter1092
شنبه 08 اردیبهشت 1397, 15:19 عصر
من یه masked تاریخ زدم بعد یه label حالا میخوام وقتی تو این maskتاریخی رو میزنم بهم نشون بده توی label چند شنبه است.

senter1092
شنبه 08 اردیبهشت 1397, 15:46 عصر
شرمنده متوجه منظور بنده شدید؟ خیلی گیرم میشه بهم زودتر جواب بدید متشکر

رامین مرادی
شنبه 08 اردیبهشت 1397, 15:49 عصر
اینو اضافه کنید
using System.Globalization;

senter1092
شنبه 08 اردیبهشت 1397, 16:01 عصر
متاسفانه با تغییر تاریخ این روز توی label تغییر نمیکنه :گریه:

senter1092
شنبه 08 اردیبهشت 1397, 16:14 عصر
راه حلی داره که از ورودی تاریخ رو بگیره و در label روز رو نشون بده اینکه شما زحمتشو کشیدین فقط تاریخ حال حاضر سیستم رو میده ممنون میشم کمکم کنین

رامین مرادی
یک شنبه 09 اردیبهشت 1397, 09:06 صبح
راه حلی داره که از ورودی تاریخ رو بگیره و در label روز رو نشون بده اینکه شما زحمتشو کشیدین فقط تاریخ حال حاضر سیستم رو میده ممنون میشم کمکم کنین
دوست عزیز کاش کدتون رو میزاشتین.
ولی در صورتی که با تکست باکس تاریخ رو میگیرید یا هرکامپوننت دیگه ای باید رویدادی داشته باشه که موقع تغییر تاریخ اتفاق می افته. و شما این کدی که دادم رو در اون رویداد بنویسید تا موقع تغییر تاریخ روز هفته هم تغییر کنه. در صورت امکان پروژتون رو اینجا بزارید

danialafshari
چهارشنبه 12 اردیبهشت 1397, 05:16 صبح
راه حلی داره که از ورودی تاریخ رو بگیره و در label روز رو نشون بده اینکه شما زحمتشو کشیدین فقط تاریخ حال حاضر سیستم رو میده ممنون میشم کمکم کنین
با سلام
خب تاریخ رو از textbox دریافت کنید و با substring سال و ماه و روز رو جدا کنید
حتماً تاریخ رو با فرمت استاندارد یعنی 1397/02/12 دریافت کنید

private void button1_Click(object sender, EventArgs e)
{
System.Globalization.PersianCalendar ps = new System.Globalization.PersianCalendar();
int year, month, day;
year = Convert.ToInt32(textBox1.Text.Substring(0, 4));
month = Convert.ToInt32(textBox1.Text.Substring(5, 2));
day = Convert.ToInt32(textBox1.Text.Substring(8, 2));
var result = ps.ToDateTime(year, month, day, 0, 0, 0, 0).DayOfWeek.ToString();
MessageBox.Show(result);
}

موفق باشید