如何在TextBox中键入时更改Label的文本

时间:2016-05-12 21:23:37

标签: c# winforms

请我是C#的新手,我创建了一个textBox和一个标签。我期待的是,如果我在textBox中键入一个值,我希望它显示在标签上,如果我更改了值,它也应该立即在标签上更改。 它使用下面的代码,然后按回车键

 private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {
            label1.Text = textBox1.Text;
        }
   }

但我想要它而不按键盘上的Enter / Return键。

感谢您的理解

3 个答案:

答案 0 :(得分:5)

适用于VisualStudio

在Designer中选择您的TextBox,转到它的属性,然后单击事件(带闪电的图标)。然后双击所谓的事件:TextChanged

enter image description here

这将创建一个新函数,当TextBox的文本发生更改时,将始终调用该函数。将以下代码插入函数:

private void textBox1_TextChanged(object sender, EventArgs e)
{
    TextBox tb = sender as TextBox;
    label1.Text = tb.Text;
}

就是这样。

答案 1 :(得分:3)

label.DataBindings.Add("Text", textBox, "Text");

答案 2 :(得分:0)

textbox KeyDown / Up / Press事件可能有所帮助。 例如

private void textBox1_KeyDown(object sender, KeyEventArgs e)
        {
            label1.Text += e.KeyData.ToString();
        }