Проверка текстового поля в Windows формах - PullRequest
0 голосов
/ 30 января 2020

Я довольно новичок в Windows Формах, и у меня есть кнопка для продолжения и три текстовых поля. Кнопка отключена. Теперь пользователь должен сначала заполнить все три текстовых поля, прежде чем кнопка будет включена.

Пожалуйста, помогите мне.

Спасибо.

Ответы [ 3 ]

0 голосов
/ 30 января 2020

Это поможет.

Подключите некоторые методы к событию TextChanged текстовых полей (это можно сделать в конструкторе), но я поместил его в конструктор формы в InitializeComponent ( );

public Form1()
{
    InitializeComponent();

    textBox1.TextChanged += TextBox_TextChanged;
    textBox2.TextChanged += TextBox_TextChanged;
    textBox3.TextChanged += TextBox_TextChanged;
}

Тогда мой метод для измененного текста просто вызывает метод проверки и включает кнопку, если этот метод возвращает значение true.

private void TextBox_TextChanged(object sender, EventArgs e)
{
      button1.Enabled = ValidateTextBoxes();
      //Anything else you might want to do...
}

и, наконец, мой метод для проверки. Снова довольно просто, если любое из текстовых полей пустое, возвращает false.

private bool ValidateTextBoxes()
{
    if (string.IsNullOrEmpty(textBox1.Text) || string.IsNullOrEmpty(textBox2.Text)
            || string.IsNullOrEmpty(textBox3.Text))
    {
       return false;
    }

    //Any other validation you may want... e.g length, regex pattern etc.

    return true;
}
0 голосов
/ 30 января 2020

Вы можете использовать событие TextChange для этой цели и использовать один и тот же метод для всех текстовых полей, как - enter image description here

И проверить вот так

private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (!string.IsNullOrEmpty(textBox1.Text) && !string.IsNullOrEmpty(textBox2.Text))
            {
                button1.Enabled = true;
            }
        }
0 голосов
/ 30 января 2020

Вы можете добавить событие TextChanged ко всем вашим текстовым полям, в обработчике вы проверяете, заполнены ли все три текстовых поля, если да -> Кнопка включена.

...