PDA

View Full Version : چی کار باید کرد که تو textbox فقط بشه عدد وارد کرد ؟؟؟



mahdi68
سه شنبه 21 اردیبهشت 1389, 12:04 عصر
سلام
چی کار باید کرد که تو textbox فقط بشه عدد وارد کرد ؟؟؟
متشکرم

Netsky
سه شنبه 21 اردیبهشت 1389, 12:44 عصر
سلام رفيق .
اينم يه كد خدمت شما :


if (e.KeyChar == 8)
{
return;
}
if (!(e.KeyChar >= '0' && e.KeyChar <= '9'))
{
e.Handled = true;
}
اين كد رو بايد داخل رويداد Key_Press تكست باكس بزاري .
موفق باشي ........

hamidreza20
سه شنبه 21 اردیبهشت 1389, 12:45 عصر
سلام
چی کار باید کرد که تو textbox فقط بشه عدد وارد کرد ؟؟؟
متشکرم

سلام دوست عزیز

در رویداد keypress تکست باکس کد زیر رو وارد کن :



if ( char.IsLetter(e.KeyChar))
e.Handled = true;


التماس دعا...

RAZI KHANUM
سه شنبه 21 اردیبهشت 1389, 12:46 عصر
سلام توی متد keypress این کد رو وارد کن
if (char.IsDigit(e.KeyChar) || char.IsControl(e.KeyChar))
e.Handled = false;
else
e.Handled = true;

RIG000
سه شنبه 21 اردیبهشت 1389, 13:04 عصر
همه همه چی رو گفتن تنها این مونده که از دکمه های کیبرد استفاده کن از اعدادش نه از حرف هاش
موفق باشی

ali.rezaei7
سه شنبه 21 اردیبهشت 1389, 13:39 عصر
خب از کنترل maskedtextbox استفاده کن.هم می تونی ورودی رو فیلتر کنی و هم نیازی به کد نویسی نیست

RIG000
سه شنبه 21 اردیبهشت 1389, 13:45 عصر
خب از کنترل maskedtextbox استفاده کن.هم می تونی ورودی رو فیلتر کنی و هم نیازی به کد نویسی نیست

میشه توضیح بدی بدون کد این چه جوریه؟

ali.rezaei7
سه شنبه 21 اردیبهشت 1389, 14:01 عصر
یه کنترل MaskedTextbox بساز خاصیت Mask رو برابر # قرار بده.
برای اطلاعات بیشتر به آدرس زیر سر بزن:
http://msdn.microsoft.com/en-us/library/system.windows.forms.maskedtextbox.mask%28v=VS.80% 29.aspx

amirghazali
سه شنبه 21 اردیبهشت 1389, 14:10 عصر
سلام.
میتونید از این کامپوننت استفاده کنید و اون را به سورس کد خود اضافه کنید که دیگه نیاز به دردسرهای کدنویسی توی event ها را نداشته باشید .

mahdi68
سه شنبه 21 اردیبهشت 1389, 16:40 عصر
دوستان از همگی متشکرم

e.Handled = true;
این خط چیکار میکنه ؟؟؟

amir.khanlari
سه شنبه 21 اردیبهشت 1389, 17:14 عصر
بهتر بود قبل از ایجاد تاپیک جستجو می کردید . لینک زیر همه نوع textbox دارد
http://barnamenevis.org/forum/showpost.php?p=490890

Majid&Masoud
سه شنبه 21 اردیبهشت 1389, 17:32 عصر
اگه خاصیت handled تو رویداد KeyPress روی True قرار داده بشه از وارد کردن مقدار کلید فشرده شده جلوگیری میکنه

Netsky
سه شنبه 21 اردیبهشت 1389, 19:39 عصر
سلام دوست عزیز

در رویداد keypress تکست باکس کد زیر رو وارد کن :



if ( char.IsLetter(e.KeyChar))
e.Handled = true;


التماس دعا...
دوست عزيز كدي كه شما گذاشتي مشكل داره . مشكلش هم اينه كه اجازه تايپ حروفي مثل :


! @ # $ % ^ & * ) ( _ + =
رو ميده .

hamidreza20
سه شنبه 28 اردیبهشت 1389, 11:15 صبح
دوست عزيز كدي كه شما گذاشتي مشكل داره . مشكلش هم اينه كه اجازه تايپ حروفي مثل :

رو ميده .

درسته دوست عزیز ممنون از تذکر تون ... کد درست به شکل ذیل می باشد
http://barnamenevis.org/forum/showpost.php?p=490890

التماس دعا..

Masoud_Sa
جمعه 31 اردیبهشت 1389, 09:58 صبح
بر روی خاصیت Key Press این کد رو بنویسید :


if (!Char.IsDigit(e.KeyChar) && !Char.IsControl(e.KeyChar))
e.Handled = true;

cardano7
جمعه 31 اردیبهشت 1389, 14:43 عصر
کدهای مطرح شده خوبند. اما چند تا نکته ی دیگه رو هم باید در نظر گرفت:
اینکه کجا باید + و - اجازه داده بشند. -> فقط اول عدد
نقطه ی اعشار هم فقط یک بار اجازه ی ورود داره(برای داده های اعشار)
با این همه باز هم کاربر می تونه مریض باشه و بخواد عدد خارج از رنج وارد کنه! که اون هم راه داره.

Hamishebahar
جمعه 31 اردیبهشت 1389, 17:00 عصر
سلام.
چرا از Masektextbox VS استفاده نمیکنید؟