PDA

View Full Version : مبتدی: تاریخ



81579001
پنج شنبه 21 مرداد 1389, 17:48 عصر
سلام
بهترین حالت کد نویسی برای درج تاریخ
البته نه از سیستم بلکه بصورت دستی چگونه است؟
که موارد 6 ماه 31 روز اول سال را محاسبه کند
تشکر

sinashahab
پنج شنبه 21 مرداد 1389, 18:57 عصر
بهتر توضیح بده !
نمی دونم منظورت اینه یا نه ولی می تونی از datetimepiker استفاده کنی .
---------------
موفقیت فقط تو دست تو نیست !!:متفکر:

mehdi5106
پنج شنبه 21 مرداد 1389, 19:03 عصر
من از تابع زیر که بهینش کردم برای تشخیص تاریخ شمسی استفاده می کنم.
البته در رویداد Leave تکست باکس قرار بده:


public void DateValidation(Textbox txtBox)
{
if (txtBox.Text != "")
{
try
{
PersianCalendar pd = new PersianCalendar();
if (Regex.IsMatch(txtBox.Text, @"(13|14)\d\d[/]([1-9]|0[1-9]|1[012])[/]([1-9]|0[1-9]|[12][0-9]|3[01])"))
{
string[] datePart = new string[3];
datePart = txtBox.Text.Split(new char[] { '/' });
int year = Convert.ToInt32(datePart[0]);
int month = Convert.ToInt32(datePart[1]);
int day = Convert.ToInt32(datePart[2]);
DateTime GregorianDate = pd.ToDateTime(year, month, day, 0, 0, 0, 0);
string tempString = pd.GetYear(GregorianDate).ToString() + "/" + pd.GetMonth(GregorianDate).ToString() + "/" + pd.GetDayOfMonth(GregorianDate).ToString();
txtBox.Text = tempString;
}
else
throw new Exception();
}
catch (Exception)
{
txtBox.Text = "تاریخ نامعتبر";
txtBox.Focus();
}
}
}

mohammad272005
جمعه 22 مرداد 1389, 14:44 عصر
اینو (http://www.codeproject.com/KB/cs/PersianDateTime.aspx) یه نگاهی بنداز. شاید به دردت بخوره

81579001
شنبه 23 مرداد 1389, 01:24 صبح
سلام
آنچه که می خواهم وارد کردن تاریخ از 3 تکست باکس (روز-ماه-سال)در یک فیلد دیتابیس بارعایت
6 ماه 31 روز که در صورت خطا پیام دهد
تشکر