在c#中重用文本框的乘法逻辑

时间:2017-10-07 23:10:18

标签: c# asp.net

我有60个文本框。每排三个。对于前20行中的每一行,我将前两个文本框重复,并将值存储在第三个文本框中。 我创建了一个简单的逻辑,用于将两个文本框中的值相乘并将值存储在第三个文本框中。 不幸的是,这个逻辑需要粘贴二十次。有没有办法为每一行重用相同的逻辑。 任何帮助将不胜感激!

private void Multiplication()
    {
        int a;
        float b;
        if (BoxA.Text != "")
            {
            a= Convert.ToInt32(BoxA.Text);
            }
        else
            {
            a = 0;
            }
        if (BoxB.Text != "")
            {
            b = Convert.ToSingle(BoxB.Text);
            }
        else
            {
            b= 0;
            }

        float c= a* b;
        BoxC.Text = mult.ToString();

    }

1 个答案:

答案 0 :(得分:1)

您应该使用共享方法共享逻辑。传递你的盒子,并在那里执行逻辑:

private static void MultiplyBoxes(TextBox a, TextBox b, TextBox c) {
    if (!int.TryParse(a.Text, var out ia)) {
        ia = 0;
    }
    if (!int.TryParse(b.Text, var out ib)) {
        ib = 0;
    }
    c.Text = (ia*ib).ToString();
}

现在,您可以为每一行附加相同的方法,而无需复制粘贴实际逻辑。

注意:这是用C#7语法(var out构造)编写的。如果您使用的是早期版本,请提前声明int ia, ib,并在方法调用中使用out iaout ib