PDA

View Full Version : سوال: کنترل کردن MaskedTextBox



hooooman
جمعه 20 اردیبهشت 1387, 17:25 عصر
سلام
جستجو در این باره به نتیجه نرسید!!!!
اگه بخایم کنترل کنیم که 1 MaskedTextBox که مثلا فرمت تاریخ داره داخلش مقداری وارد شده یا نه چیکار باید کرد؟

این کد جواب نمیده چون توی این Msk همیشه دوتا / وجود داره :


string.isnullorempty(msk.text)

linux
جمعه 20 اردیبهشت 1387, 18:47 عصر
سلام
جستجو در این باره به نتیجه نرسید!!!!
اگه بخایم کنترل کنیم که 1 MaskedTextBox که مثلا فرمت تاریخ داره داخلش مقداری وارد شده یا نه چیکار باید کرد؟

این کد جواب نمیده چون توی این Msk همیشه دوتا / وجود داره :


string.isnullorempty(msk.text)



if(maskedTextBox1.MaskCompleted)
MessageBox.Show("OK");

amirsajjadi
جمعه 20 اردیبهشت 1387, 22:18 عصر
MsgBox(String.IsNullOrEmpty(MaskedTextBox1.Validat eText))

alimooneh
شنبه 26 اردیبهشت 1388, 12:26 عصر
if (maskedtextbaox1.MaskFull)
messagebox.show("por asdt")
else
messagebox.show("khali")

hana2064
چهارشنبه 30 اردیبهشت 1388, 10:14 صبح
سلام منم میخوام masked چک کنم که تاریخ ورودیش اشتباه نباشه . یه پست تو تالار پیدا کردم که برای فرمت Shortdate یعنی الگوی (00/00/0000) کد زیر رو استفاده میکنه


if (
(int.Parse(maskedTextBox1.Text.Substring(3, 2)) > 6 &&
int.Parse(maskedTextBox1.Text.Substring(0, 2)) > 30) ||
int.Parse(maskedTextBox1.Text.Substring(0, 2)) > 31 ||
int.Parse(maskedTextBox1.Text.Substring(0, 2)) < 1 ||
int.Parse(maskedTextBox1.Text.Substring(3, 2)) > 12 ||
int.Parse(maskedTextBox1.Text.Substring(3, 2)) < 1 ||
int.Parse(maskedTextBox1.Text.Substring(6, 4)) > 2000 ||
int.Parse(maskedTextBox1.Text.Substring(6, 4)) < 1300
)
MessageBox.Show("خطا در ورود تاریخ ...!");
else
MessageBox.Show("تاریخ مورد قبول است.");






ام وقتی من الگو رو به 00/00/0000 تغییر میدم این کد کار نمیکنه
دقیقا نمیدونم که Text.Substring(3, 2) کدوم قسمت از این الگو رو چک میکنه؟ لطفا راهنمایی کنید

anooshiran
چهارشنبه 30 اردیبهشت 1388, 13:04 عصر
سلام دوست عزيز

كد زير اصلاح شده همان كد ارائه شده توسط شماست





Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.RightToLeft = Windows.Forms.RightToLeft.Yes
Me.RightToLeftLayout = True
MaskedTextBox1.Mask = "0000/00/00"
End Sub
Private Sub MaskedTextBox1_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles MaskedTextBox1.Leave
Dim yy As Integer = Integer.Parse(MaskedTextBox1.Text.Substring(0, 4))
Dim mm As Integer = Integer.Parse(MaskedTextBox1.Text.Substring(5, 2))
Dim dd As Integer = Integer.Parse(MaskedTextBox1.Text.Substring(8, 2))
If (mm > 6 AndAlso dd > 30) OrElse dd > 31 OrElse dd < 1 OrElse mm > 12 OrElse mm < 1 OrElse yy > 2000 OrElse yy < 1300 Then
MessageBox.Show("خطا در ورود تاریخ ...!")
Else
MessageBox.Show("تاریخ مورد قبول است.")
End If
End Sub