2013-10-23 47 views
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'。 我該怎麼辦?請幫忙!!!!!

回答

1

創建和代碼的標籤文本後面

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

,如果你想找到一個已經exisisting標籤和更改文本:

Label lb = (Label)FindControl("LabelID"); 
lb.Text = "New text"; 
2

代碼中的標籤不是ASP.NET控件。您應該使用:

<asp:Label 

,而不是僅僅

<label 
+0

謝謝丹尼爾,它工作 –