Rockstar_ Ответов: 4

Разрешение символов запятой и точки в текстовом поле


Я хочу, чтобы textbox разрешал буквы,backspace,пробел,запятые и точки при нажатии клавиши ...

Пожалуйста, дайте мне предложение по этому поводу...

У меня есть свой код примерно такой

public void Check(Object sender, KeyPressEventArgs e)
        {
            if (!char.IsLetter(e.KeyChar))
            {
                e.Handled = true;
            }
            if (char.IsLetter(e.KeyChar) || e.KeyChar == (char)Keys.Back || e.KeyChar == (char)Keys.Space )
            {
&
                // These characters may pass
                e.Handled = false;
            }
            else
            {
                // Everything that is not a letter, nor a backspace nor a space will be blocked
                e.Handled = true;
            }


        }

Sandeep Mewara

И в чем же проблема?

4 Ответов

Рейтинг:
1

Rockstar_

Привет,


public void Check(Object sender, KeyPressEventArgs e)
       {
           //if (!char.IsLetter(e.KeyChar)||!char.IsNumber(e.KeyChar))
           //{
           //    e.Handled = true;
           //}
           if (char.IsLetter(e.KeyChar) || e.KeyChar == (char)Keys.Back || e.KeyChar == (char)Keys.Space || e.KeyChar=='.' || e.KeyChar==',' ||char.IsNumber(e.KeyChar))
           {

               // These characters may pass
               e.Handled = false;
           }
           else
           {
               // Everything that is not a letter, nor a backspace nor a space will be blocked
               e.Handled = true;
           }


       }


Рейтинг:
0

dharan1990

Для этого текстового поля лучше использовать регулярное выражение ..
Пройдите по этой ссылке, это будет лучше полезно для вас, чтобы понять регулярное выражение..

http://msdn.microsoft.com/en-us/library/ff650303.aspx[^]

Надеюсь, вы его получили..


Рейтинг:
0

Member 14887422

он очень прост в использовании и всегда я использую именно так


чар ЧР = е.Ключевой-символ;
если (!char.IsControl(e.KeyChar) && !char.IsLetter(e.KeyChar) & & amp; !char.IsWhiteSpace(электронная.Ключевой-символ) и усилитель; & ЧР!=',' &ампер;&ампер; ЧР!='.' &ампер;&ампер; ЧР!=8)
{
е.Обработано = истина;
//некоторые утверждения, такие как MessageBox.Show("Пожалуйста, Введите Допустимое Значение");
}
// 8 означает backspace
таким образом,ваше текстовое поле принимает только точку, запятую,пробел, пробел и буквы, кроме того, что он будет производить "пожалуйста, введите допустимое значение".