PDA

View Full Version : سوال: کنترل maskedtextbox برای تاریخ ورودی



saeed hg
جمعه 21 مرداد 1390, 00:31 صبح
سلام دوستان. من با استفاده از تابع زیر


Public Function Shamsi_Date(ByVal DT As Date) As String
Dim Year, Month, Day As String
Dim Glob As New Globalization.PersianCalendar
Year = Format(Glob.GetYear(DT), "0000")
Month = Format(Glob.GetMonth(DT), "00")
Day = Format(Glob.GetDayOfMonth(DT), "00")
Shamsi_Date = Year & "/" & Month & "/" & Day
Return Shamsi_Date
End Function



تاریخ شمسی رو در یک مسک تکست باکس با فرمت __/__/____
قرار میدم و همچنین به اپراتور اجازه میدم که تاریخ رو تغییر بده. سوالم اینه که چه جوری میشه از وارد کردن سال و ماه و روز اشتباه در مسک تکست باکس جلوگیری کنم که مثلاً اپراتور تاریخ رو 1390/03/34 وارد نکنه؟
سرچ کردم، در بخش C# تووضیحاتی اومده اما من C#بلد نیستم. اگه ممکنه راهنمایی کنید.

http://barnamenevis.org/showthread.php?160618-%DA%A9%D9%86%D8%AA%D8%B1%D9%84-maskedtextbox-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AA%D8%A7%D8%B1%DB%8C%D8%AE-%D9%88%D8%B1%D9%88%D8%AF%DB%8C

ممنون:تشویق:

saeed hg
جمعه 21 مرداد 1390, 19:34 عصر
دوستان ، دوستان : کسی نیست یه هلی بده ، یه کمکی کنه مشکل حل شه. دستم به دامنتون

pouyansaraf
جمعه 21 مرداد 1390, 19:48 عصر
به نظر من اگر از همین راه میخواهی استفاده کنید:
ورودی را اسپلیت کنید و بعد چک کنید
مثل کد زیر
Dim MinMM As Integer = 1
Dim MinDD As Integer = 1
Dim MaxMM As Integer = 12
Dim MaxDD As Integer = 31

Dim str() As String = TextBox1.Text.Split("/")
If str(1) < MinMM Or str(1) > MaxMM Then
MsgBox("Month is incorect")
End If

If str(1) > 6 Then
MaxDD = 30
Else
MaxDD = 31

End If
If str(2) < MinDD Or str(2) > MaxDD Then
MsgBox("Day is incorect")
End If

saeed hg
جمعه 21 مرداد 1390, 20:07 عصر
یعنی معنی اون کد سی شارپ که آدرسش رو گذاشتم اینیه که شما نوشتی؟
میشه بیشتر توضیح بدید؟ در کجا باید چک کنم؟ در کدوم رویداد؟
ممنون

pouyansaraf
جمعه 21 مرداد 1390, 20:11 عصر
چی کار به معنیش دارید

این کد کار میکنه و شما مخیتونید استفاده کنید
امتحان کردید

saeed hg
جمعه 21 مرداد 1390, 20:50 عصر
ظاهرا کار میکنه .در رویداد Leave تکست باکس نوشتم عمل کرد.به نظرت در رویداد Leave جاش خوبه؟
سال رو چی؟ نمی خواد کنترل کنم؟

pouyansaraf
شنبه 22 مرداد 1390, 09:58 صبح
سلام
خوب واسه سالش هم یه شرط بزارید /، بد نیست