PDA

View Full Version : حرکت اتوماتیک بر روی TextBox به اعلام محدودیت



shirazi90
شنبه 11 آذر 1391, 15:08 عصر
سلام خدمت دوستان عزیز
من سه تا TextBox دارم و می خواهم در اولی 4 کارکتر بعد از تایپ به صورت اتوماتیک به TextBox دوم برود و کاربر بتواند فقط عدد ماه ها ( 1 الی 12 ) را تایپ کند و به صورت اتوماتیک بعد از تایپ به TextBox سوم رفته و کاربر بتواند عدد روز( 1الی 31 ) را تایپ نمایید با تشکر

ارمین نصیری
شنبه 11 آذر 1391, 15:12 عصر
خوب توی خصوصیت mask تکس باکس 4 تا صفر وارد کن

maythammsp2000
شنبه 11 آذر 1391, 16:05 عصر
دوست عزيز به اين صورت بنويس.

در ‌TextBox1 تو رويداد TextChangeبه اين صورت بنويس.

if (TextBox1.Length=4)
TextBox2.Focus();


تو همين رويداد TextBox2 هم اين كدهارو وارد كنيد


if( Int.Parse(TextBox2.Text)>1 &&Int.Parse(TextBox2..text) <12)
TextBox3.Focus();
else
TextBox2.Text="";



تو همين رويداد TextBox3 هم اين كدهارو وارد كن

if (Int.parse(textbox3.text)>1 && Int.Parse(textBox3.text)<31)
nextControl.Focus();
else
TextBox3.Text="";




Good Luck

roolinjax
شنبه 11 آذر 1391, 17:46 عصر
دوست عزيز به اين صورت بنويس.

در ‌TextBox1 تو رويداد TextChangeبه اين صورت بنويس.

if (TextBox1.Length=4)
TextBox2.Focus();


تو همين رويداد TextBox2 هم اين كدهارو وارد كنيد


if( Int.Parse(TextBox2.Text)>1 &&Int.Parse(TextBox2..text) <12)
TextBox3.Focus();
else
TextBox2.Text="";



تو همين رويداد TextBox3 هم اين كدهارو وارد كن

if (Int.parse(textbox3.text)>1 && Int.Parse(textBox3.text)<31)
nextControl.Focus();
else
TextBox3.Text="";




Good Luck

کد شما یه ایراد کوچولو داره
اونم این که در وارد کردن اعداد دو رقمی توی TextBox2 و TextBox3 وقتی اولین کاراکتر رو میگیره شرط رو چک می کنه و به کاربر اجازه تایپ دومین کاراکتر رو نمیده.
پس روش شما استاندارد و درست نیست
بهترین کار اینه که کاربر رو توی فیلدهای روز و ماه ملزم به ورود دو کاراکتر کنیم و وقتی مقدار TextLength به مقدار MaxLength رسید اون موقع عمل بررسی کنه که آیا عدد وارد شده در بازه ی مورد نظر هست یا نه .


حالا Good Luck !!!!