根据另一个文本框中的文本更改文本框文本

本文关键字:文本 另一个 | 更新日期: 2023-09-27 18:29:01

我正在做一个web表单应用程序。在这个表单中,我有三个文本框,其中一个显示了对另外两个文本框进行核复用的结果。假设三个文本框是txtMulti1、txtMulti2和txtMultiRst。

到目前为止,这是我的代码,但不起作用

public txtMultiRst_TextChange(       obeject sender, EventArgs e) {
    int result = int.Parse(txtMultRst.Text);
    result = int.Parse(txtMulti1.Text) * int.Parse(txtMulti2.Text);
}

我的想法是txtMuli1*txtMulti2,答案应该显示在txtMulRst中。帮助将是伟大的感谢

根据另一个文本框中的文本更改文本框文本

您应该设置txtMultRst.Text属性。

int result =  int.Parse(txtMulti1.Text) * int.Parse(txtMulti2.Text);
txtMultRst.Text = result.ToString();

在您的案例中,您正在创建新的变量result并将值设置为它,而不是设置为txtMultRst.Text,因为int是一种值类型。

此外,我建议使用TryParse而不是Parse,以处理txtMulti1.Text无法解析为int的情况。

    int value1 = 0;
    int value2 = 0;
    if (int.TryParse (txtMulti1.Text, out value1) && int.TryParse (txtMulti2.Text, out value2))
    {
         int result =  value1  * value2; 
         txtMultRst.Text = result.ToString();
    }

鉴于这是一个用户输入字段,我强烈建议使用Int32.TryParse。否则,当他们第一次输入不是数字的东西时,就会抛出异常。

试试这样的东西:

int n1, n2;
if(Int32.TryParse(txtMulti1.Text, out n1) && Int32.TryParse(txtMulti2.Text, out n2)
    txtMultRst.Text = (n1*n2).ToString();
else
    txtMultRst.Text = "Please enter valid numbers only";