PDA

View Full Version : جلوگیری از تایپ حرف یا عدد در TEXTBOX



m0rteza
سه شنبه 03 مهر 1386, 15:30 عصر
با سلام
چطور در TEXTBOX از تایپ حروف جلوگیری کنم و فقط عدد چاپ بشه؟
ممنون

hassan razavi
سه شنبه 03 مهر 1386, 15:54 عصر
با این کد می تونید تشخیص بدید که عدد وارد شده یا حرف و سپس مدیریت کنید



private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (char.IsDigit(Convert.ToChar(e.KeyValue)))
MessageBox.Show("Digit");

if (char.IsLetter(Convert.ToChar(e.KeyValue)))
{
e.SuppressKeyPress = false;
e.Handled = false;
}
}

alirzn
پنج شنبه 05 مهر 1386, 11:33 صبح
بجای textbox از maskedtextbox استفاده کن و mask آن رو روی int قرار بده.



با این کد می تونید تشخیص بدید که عدد وارد شده یا حرف و سپس مدیریت کنید

private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (char.IsDigit(Convert.ToChar(e.KeyValue)))
MessageBox.Show("Digit");

if (char.IsLetter(Convert.ToChar(e.KeyValue)))
{
e.SuppressKeyPress = false;
e.Handled = false;
}
}

m0rteza
پنج شنبه 05 مهر 1386, 16:50 عصر
از هر دو شما خیلی خیلی ممنونم
روش آقای hassan vaziri خیلی جالب هست و به نظر میاد همه چیز درسته ولی نمی دونم چرا کار نمی کنه؟ دوستان لطف کنن مشکل رو بگن.
و ار دوست دیگه هم ممنون چون باعث شد کار با یکی از ابزار های مفید رو یاد بگیرم .

Ali.Prog
پنج شنبه 05 مهر 1386, 20:15 عصر
در KeyPress:



private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (char.IsLetter(Convert.ToChar(e.KeyChar)))
e.Handled = true;
}

برای هر کاراکتر دیگری هم که بخواهید میتوانید شرط بگذارید.

emad_67
پنج شنبه 05 مهر 1386, 23:52 عصر
در KeyPress:



private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (char.IsLetter(Convert.ToChar(e.KeyChar)))
e.Handled = true;
}

برای هر کاراکتر دیگری هم که بخواهید میتوانید شرط بگذارید.
با سلام. ببخشید که اینجا پست میزنم ولی 2 تا سوال برام پیش اومد:
1) چرا در شرط مقدار KeyChar رو به نوع char تبدیل می کنیم ؟ مگه خودش char نیست؟
مثلا چرا اینجوری نمینویسید:


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

2) میخواستم بدونم Handled چی هست و چیکار میکنه؟

hassan razavi
جمعه 06 مهر 1386, 16:02 عصر
نیازی به Convert کردن e.KeyChar نیست ، چون خودش از جنس Char هست

emad_67
جمعه 06 مهر 1386, 16:14 عصر
نیازی به Convert کردن e.KeyChar نیست ، چون خودش از جنس Char هست

شما پس چرا تو پست دوم تبدیل کردی؟
ضمنا اگه میشه در مورد handled هم توضیح بدید؟


با این کد می تونید تشخیص بدید که عدد وارد شده یا حرف و سپس مدیریت کنید



private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (char.IsDigit(Convert.ToChar(e.KeyValue)))
MessageBox.Show("Digit");

if (char.IsLetter(Convert.ToChar(e.KeyValue)))
{
e.SuppressKeyPress = false;
e.Handled = false;
}
}

mahmoon2459
سه شنبه 10 اردیبهشت 1392, 12:13 عصر
مرسیییییییییی.ای ول