2

我正在尝试在文本框中打印一个字符串 n 次。我可以使文本框显示字符串:

    string textinput = inputTEXT.Text;
    int intinput = int.Parse(inputINT.Text);

    int n = 0;
    while (n < intinput)
    {
         output.Text = textinput;
         n++;
    }

但我希望这样做,以便在 n 次打印字符串,然后移动到下一行并再次打印。

4

4 回答 4

3

你所做的只是output.Text一遍又一遍地设置。您需要将值附加到末尾:

{output.Text += textinput; n++;}

注意,+=运算符,它是以下的简写:

output.Text = output.Text + textinput;

如果你想要在每次迭代后换行,你会这样做:

{output.Text += textinput + System.Environment.NewLine; n++;}

这当然假设任何东西output都可以显示多行。

于 2013-11-11T21:00:05.160 回答
2

在您的 while 循环中,将代码更改为

output.Text += textInput

这样就可以了:)

于 2013-11-11T20:59:51.460 回答
2
output.Text += textInput + Environment.NewLine
于 2013-11-11T21:01:14.470 回答
2

您需要附加到输出文本框的前一个值,并确保有一个多行文本框,否则您只会看到一个长行

// No need to convert a string to a string (Text property is already a string)
string textinput = inputTEXT.Text;
int intinput;
// Do not trust the user to type an integer here... 
// check with tryparse...
if(Int32.TryParse(inputINT.Text, out intinput))
{
    int n = 0;
    while (n < intinput)
    {
       output.AppendText(textinput + Environment.NewLine); 
       n++;
    }
}
else
   MessageBox.Show("Not an integer");
于 2013-11-11T21:02:33.150 回答