2013-08-07 5 views
1

У меня есть три текстовых поля. Один для FirstName, другой для LastName, Last для FullName.Обновление текстового поля при обновлении текстового поля

Что я хочу сделать, так это то, что всякий раз, когда заполняется текстовое поле firstname, FullName следует сбрасывать в текст FirstName, а текстовое поле FullName должно обновляться всякий раз, когда заполняется текстовое поле.

Я попытался

private void txtFirstName_TextChanged(object sender, EventArgs e) 
    { 
     txtFullName.Text = txtFirstName.Text; 
    } 

    private void txtLastName_TextChanged(object sender, EventArgs e) 
    { 
     if (_New == false) 
     { 
      txtFullName.Text += " "; 
      _New = true; 
     } 
     string newletter = txtLastName.Text.Substring(txtLastName.Text.Length - 1); 
     txtFullName.Text += newletter; 
    } 

Этот код работает в определенной степени, но основные проблемы с этим кодом является то, что ПолноеИмя текстовое поле не обновляется всякий раз, когда пользователь удаляет текст из LastName текстовое поле также, я хочу это что, когда текст удаляется из текстового поля firstname, когда в текстовом поле lastname есть текст, весь текст не должен быть сброшен, но текст должен быть обновлен.

Любая помощь будет оценена по достоинству.

ответ

5

Это должно работать для вас

private void Form() 
    { 
     txtFirstName.TextChanged += TextBoxChanged; 
     txtLastName.TextChanged += TextBoxChanged; 
    } 

    private void TextBoxChanged(object sender, EventArgs e) 
    { 
     txtFullName.Text = txtFirstName.Text + " " + txtLastName.Text; 
    } 
+4

Чтобы сделать его чище, как текстовые поля можно использовать один и тот же EventHandler. –

Смежные вопросы