我刚开始使用ASP.NET,我在循环中显示结果时遇到了麻烦。例如:
int x = 0;
while (x < 10) {
Label1.Text = x+""; // This will show only result 9 ( last result ).
x++;
}
如何显示所有结果而不只显示一个?
答案 0 :(得分:1)
而不是:
Label1.Text = x+"";
执行:
Label1.Text = Label1.Text + x;
答案 1 :(得分:1)
这将仅显示结果9(最后结果)。
是的,因为您在每次迭代中都为Label1.Text
属性分配了一个新值。
试试这个;
int x = 0;
while (x < 10)
{
Label1.Text = Label1.Text + x;
x++;
}
或者在string
之外定义while
值,并在循环内添加此int
值,并在循环之外指定.Text
值; < / p>
int x = 0;
string s = "";
while (x < 10)
{
s += x;
x++;
}
Label1.Text = s;
如果使用大量数字,使用StringBuilder
会更好;
int x = 0;
StringBuilder s = new StringBuilder();
while (x < 10)
{
s.Append(x);
x++;
}
Label1.Text = s.ToString();
答案 2 :(得分:0)
int x = 0;
while (x < 10) {
Label1.Text += x+""; // This will show "123456789".
x++;
}
您需要在每次迭代中添加文本。
答案 3 :(得分:0)
如果您想显示它们的列表:
Label1.Text += "," + x.ToString();
或者
Label1.Text = Label1.Text + "," + x.ToString();
无论哪种方式都会产生结果:
0,1,2,3,4,5,6,7,8,9
答案 4 :(得分:0)
你应该积累每个元素的值,如下所示:
int x = 0;
while (x < 10) {
Label1.Text = Label1.Text + x;
x++;
}
答案 5 :(得分:0)
int x = 0;
while (x < 10) {
Label1.Text += x.ToString();
x++;
}
答案 6 :(得分:0)
您可以使用字符串构建器
试试这个:
StringBuilder sb = new StringBuilder();
int x = 0;
while (x < 10) {
sb.Append(x);
sb.Append(" ");
x++;
}
Label1.Text = sb.ToString();
答案 7 :(得分:0)
请使用下面的代码,你必须在每次迭代中为Label1.Text分配一个新的id。
int x = 0;
while (x < 10)
{
label1.Text += x.ToString();
x++;
}
答案 8 :(得分:0)
替换
Label1.Text = x+"";
与
Label1.Text = Label1.Text + x.ToString();
答案 9 :(得分:0)
+=
将字符串附加到变量而不是替换它,
int x = 0;
while (x < 10) {
Label1.Text += x+" "; //append space to separate
x++;
}