两个绑定了不同值的TextBox

本文关键字:TextBox 绑定 两个 | 更新日期: 2023-09-27 18:25:58

我想将整数从TextBox转换为另一个TextBox。我有这个代码,但它只在开始时转换,当我更改TextBox时什么都不会改变。

int j = 100;
int value = 0;
for (int i = 0; i <= j; i++)
{
    if (AtextBox.Text == i.ToString())
    {
        value = j - i;
        BtextBox.Text = value.ToString();
    }
}

每次更改AtextBox时,BtextBox如何更改?

两个绑定了不同值的TextBox

您需要使用事件。创建一个TextChanged事件处理程序。

有两种方法可以做到这一点:

  1. 打开设计器,打开Atextbox的属性,找到TextChanged事件并单击两次
  2. 由于TextChangedTextBox的默认事件,只需在设计器中单击TextBox两次即可

Visual Studio将创建以下处理程序:

public void Atextbox_TextChanged(object sender, EventArgs e) ...

只需添加您的代码:

public void Atextbox_TextChanged(object sender, EventArgs e)
{
   int value;
   if (int.TryParse(Atextbox.Text, out value))
   {
       Btextbox.Text = (100 - value).ToString();
   }
}

每次更改Atextbox的内容时,它都会触发此事件,该事件将解析文本框中的整数,将其从100中减去,并将其应用于另一个文本框
而且,是的,你不需要一个循环。