我想从后面的代码中设置标签文本。 这是我的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”。 我该怎么办 ?请帮忙!!!!!
答案 0 :(得分:2)
代码中的标签不是ASP.NET控件。你应该使用:
<asp:Label
而不仅仅是
<label
答案 1 :(得分:2)
从后面的代码创建和设置标签文本
Label lb = new Label();
lb.Text = "SomeText";
lb.Id = "LabelID";
Form.Controls.Add(lb);
如果您想找到已经存在的标签并更改文字:
Label lb = (Label)FindControl("LabelID");
lb.Text = "New text";