当我的Window Forms应用程序有循环时,为什么我只看到一些文本输出?

时间:2015-10-14 03:07:06

标签: c# winforms loops

我试图提供两个数字,即最大值和最小值,以创建乘法表。我当前的代码在控制台中完美运行,但我无法正确打印到Windows窗体应用程序中的文本框。我只设法打印一个最大的数字。

private void MultiTab_CheckedChanged(object sender, EventArgs e)
{
    string final = "The Multiplication Table Is:";
    int i = Convert.ToInt32(Max.Text);
    int k = Convert.ToInt32(Min.Text);

    for (i = 1; i <= k; i++)
    {
        Result.Text = (i + "\t");
        for (int j = 1; j <= k; j++)
        {
            string x;

            if (i > k)  x = i * j + "\t";
            else x = j + "\t";
            Result.Text = final + x;
        }
        Result.Text = ("\n");
    }
}

1 个答案:

答案 0 :(得分:1)

Result.Text =将替换整个字符串,包括换行符。

您需要添加Result.Text而不是替换它。

for循环之前,将其初始化为空字符串:

Result.Text = "";

然后在这一点之后,总是追加而不是替换,例如

Result.Text += (i + "\t");

而不是

Result.Text = (i + "\t");

等等。