1

我想从后面的代码中设置标签文本。这是我的 aspx 页面,我有更多标签以及 lbl2、lbl3 等标签。

<asp:LinkButton ID="btn1" runat="server" onclick="btn1_Click" >
                      <img id="img1" runat="server"  width="195" height="306" alt="slider"><label id="lb11" runat="server" /></asp:LinkButton>

在后面的代码中,我正在验证这一点

for (int i = 1; i <= dt.Rows.Count; i++)
            {
Label lbltest = new Label();
                lbltest = (Label)this.FindControl("lbl" + i.ToString()) as Label; 
                lbltest.Text = Convert.ToString(dt.Rows[i - 1]["Type"]);
}

但我收到错误:无法将“System.Web.UI.HtmlControls.HtmlGenericControl”类型的对象转换为“System.Web.UI.WebControls.Label”类型。我该怎么办 ?请帮忙!!!!!

4

2 回答 2

2

代码中的标签不是 ASP.NET 控件。你应该使用:

<asp:Label

而不仅仅是

<label
于 2013-10-23T10:13:32.923 回答
2

从后面的代码创建和设置标签文本

Label lb = new Label();
lb.Text = "SomeText";
lb.Id = "LabelID";
Form.Controls.Add(lb);

如果您想找到一个已经存在的标签并更改文本:

Label lb = (Label)FindControl("LabelID");
lb.Text = "New text";
于 2013-10-23T10:30:24.113 回答