如何在 asp.net 中拆分逗号分隔值后在不同的标签中显示逗号分隔的值
本文关键字:分隔 标签 显示 net asp 拆分 | 更新日期: 2023-09-27 18:37:02
我在lblsubject.text中有逗号分隔的值,例如英语,科学,我使用以下代码将其分隔。 下面给出的代码在标签 1 和标签 2 中都显示科学,因为它被覆盖了......但我想在一个标签中显示英语,在另一个标签中显示科学。怎么做...请帮忙..!
string[] lines = Regex.Split(lblsubject.Text, ",");
foreach (string line in lines)
{
Label1.Text = line;
Label2.Text = line;
}
你会在数组中得到两个元素,为什么要使用 foreach 循环。 你可以做
Label1.Text = lines[0];
Label2.Text = lines[1];
如果您不知道会有多少标签,则可能需要动态添加标签。 (另请注意,Regex.Split对此是矫枉过正的,你可以使用String.Split扩展方法。
string[] lines = lblsubject.Text.Split(',');
for (int i=0 ; i<lines.Length ; i++)
{
var newLabel = new Label();
newLabel.Text = lines[i];
form1.Controls.Add(newLabel);
}
其中 form1 可以是要向其添加标签的任何容器控件。
另一种选择可能是将 HTML 直接添加到输出中。 像这样:
var html = string.Join("<br/>",
lblsubject.Text.Split(',').Select(
category => string.Format("<div>{0}</div>", category)
)
);
panel1.Controls.Add(new LiteralControl(html));
(同样,panel1 只是输出的容器。
编辑,每条评论
DrowDownList1.Items.AddRange(
lblsubject.Text.Split(',')
.Select(category => new ListItem(category))
.ToArray()
);
使用Split()
函数
string[] lines = lblsubject.Text.Split(',');
Label1.Text = lines[0];
Label2.Text = lines[1];