显示循环结果为 asp.net
本文关键字:asp net 结果 循环 显示 | 更新日期: 2023-09-27 18:33:12
我刚开始使用 ASP.NET,在显示循环结果时遇到问题。例如:
int x = 0;
while (x < 10) {
Label1.Text = x+""; // This will show only result 9 ( last result ).
x++;
}
如何显示所有结果而不是仅显示一个结果?
而不是:
Label1.Text = x+"";
做:
Label1.Text = Label1.Text + x;
这将仅显示结果 9(最后一个结果)。
是的,因为您在每次迭代中Label1.Text
属性分配一个新值。
试试这个;
int x = 0;
while (x < 10)
{
Label1.Text = Label1.Text + x;
x++;
}
或者改为在while
外部定义一个string
值,并将其int
循环中的值添加,并在循环外分配.Text
值,例如;
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();
int x = 0;
while (x < 10) {
Label1.Text += x+""; // This will show "123456789".
x++;
}
您需要在每次迭代中添加文本。
如果你想显示它们的列表:
Label1.Text += "," + x.ToString();
或
Label1.Text = Label1.Text + "," + x.ToString();
无论哪种方式都会产生结果:
0,1,2,3,4,5,6,7,8,9
你应该累积每个元素的值,如下所示:
int x = 0;
while (x < 10) {
Label1.Text = Label1.Text + x;
x++;
}
int x = 0;
while (x < 10) {
Label1.Text += x.ToString();
x++;
}
你可以使用字符串生成器
试试这个:
StringBuilder sb = new StringBuilder();
int x = 0;
while (x < 10) {
sb.Append(x);
sb.Append(" ");
x++;
}
Label1.Text = sb.ToString();
请使用下面的代码,您必须在每次迭代中为 Label1.Text 分配一个新 ID。
int x = 0;
while (x < 10)
{
label1.Text += x.ToString();
x++;
}
替换
Label1.Text = x+"";
跟
Label1.Text = Label1.Text + x.ToString();
+=
将字符串附加到变量而不是替换它,
int x = 0;
while (x < 10) {
Label1.Text += x+" "; //append space to separate
x++;
}