C#更新另一个文本框中的文本框文本

时间:2015-07-14 12:05:59

标签: c# winforms

我目前正在尝试创建一个程序,其中文本框2中有空白文本,您从文本框1中键入文本,它会更新并进入文本框2

基本上,文本框1是空的,无论在textbox1更新中输入什么,都进入文本框2

查看下面的图片,了解我的意思。

http://i.stack.imgur.com/2djK6.png http://i.stack.imgur.com/5kpAx.png

2 个答案:

答案 0 :(得分:1)

如果我完全理解,您希望TextBox 1中的更改自动转到TextBox 2。因此,您可以使用相关事件来执行此操作。如果您在WinForms点击TextBox 1控件,请查看属性/事件。可以在那里定义适当的事件。在事件处理程序中,您必须从TextBox 1获取文本并根据它更新TextBox 2

更新1 请参阅示例代码:

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

更新2 创建应用程序的步骤:

  1. Visual Studio创建一个新的WinForms项目。
  2. 向表单添加2 TextBox。确保名称为textBox1textBox2
  3. 点击TextBox1。然后在属性窗口中单击Events选项卡。
  4. 向下滚动,直至看到TextChanged事件。双击它旁边的单元格。它将使用空方法为您打开代码。
  5. textBox2.Text = ((TextBox)sender).Text;插入此方法的正文中。
  6. 你完成了。现在运行应用程序,看看你在找什么。

答案 1 :(得分:1)

您不需要((TextBox)sender).Text;。试试这个:

private void textBox1_TextChanged(object sender, EventArgs e)
{
     textBox2.Text = this.textBox1.Text;
}

更新:回复您的最新评论,以及如何替换Enter上的字段值。

如果您想在用户点击输入时执行String.Replace,请转到TextBox事件,查找KeyUp,然后添加以下代码:

    private void textBox1_KeyUp(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {
            this.textBox2.Text = this.textBox1.Text.Replace("whatever", "something else");
        }
    }