PDA

View Full Version : تایپ نشدن حروف در textBox



mortezawolf
سه شنبه 26 خرداد 1388, 19:07 عصر
سلام دوستان
من سه تا textBox دارم که مربوط به روز ماه و سال هستن
می خواستم تو اینا حروفو نشه تایپ کرد.
کمک کنید ممنون می شم

NewFoxStudent
سه شنبه 26 خرداد 1388, 19:52 عصر
در کل بهترین کار اینه که یه کلاس برای چک کردن اینکه مقادیر وارد شده توسط کاربر برای روز و ماه و سال صحیح باشه بنویسید مثلا کاربر نتونه مقدار 13 رو برای ماه وارد کنه
ولی برای سوالی که پرسیدید میتونید از کد زیر استفاده کنید


private void textBox1_TextChanged(object sender, EventArgs e)
{
foreach(char ch in textBox1.Text)
if (!char.IsDigit(ch))
{
MessageBox.Show("مقدار وارد شده صحیح نمیباشد");
textBox1.Text = "";
}
}

Reza_Yarahmadi
سه شنبه 26 خرداد 1388, 19:58 عصر
میتونی از MaskTextBox و یا NumericUpDown و یا ComboBox استفاده کنی ولی اگه میخوای TextBox باشه توی رویداد KeyPress تکست باکس مورد نظرت کد زیر رو بنویس


e.Handled = Char.IsDigit(e.KeyChar) == false && Char.IsControl(e.KeyChar) == false;

mohsen_csharp
سه شنبه 26 خرداد 1388, 20:16 عصر
اگه میخوای TextBox باشه توی رویداد KeyPress تکست باکس مورد نظرت کد زیر رو بنویس
کد:
e.Handled = Char.IsDigit(e.KeyChar) == false && Char.IsControl(e.KeyChar) == false;

جهت اطلاع:
برای این کار از رویداد KeyPress استفاده نکنید چون اگر کاربر با موس بیاد کپی پیست کنه اونوقت دیگه این رویداد اجرا نمیشه و داده ها نامعتبر خواهد بود

Mahdi.Kiani
سه شنبه 26 خرداد 1388, 20:58 عصر
سلام دوستان
سوال تکراری و پاسخ به سوالات تکراری ممنوع است و شامل جریمه می باشد./
لطفا بیشتر دقت کنید.
موفق باشید./