我試圖改變一個asp超鏈接NavigateUrl在Repeater控制內的Url。我用下面的代碼填寫我的中繼器從數據庫:編輯使用c中繼器內部的超鏈接#
在.cs文件
SqlConnection con3 = new SqlConnection("my connection");
string strcon = "select * from companydata";
cmd = new SqlCommand(strcon, con3);
da = new SqlDataAdapter(cmd);
ds = new DataSet();
da.Fill(ds, "company");
Repeater1.DataSource = ds;
Repeater1.DataBind();
con3.Close();
con3.Dispose();
在.aspx文件<asp:Repeater ID="Repeater1" runat="server"><ItemTemplate> <asp:HyperLink ID="companyid" runat="server"><%#Eval("companyname") %></asp:HyperLink> //i need to add NavigateUrl for HyperLink using loop. </ItemTemplate></asp:Repeater>
我的輸出(使用中繼器)看起來像這樣
- 微軟
- Yahoo
- Facebook的
- 的Adobe
現在我添加一些額外的代碼來填充NavigateUrl以超鏈接轉發器控件內部
foreach (RepeaterItem item in Repeater1.Items)
{
HyperLink hplink = item.FindControl("companyid") as HyperLink;
hplink.NavigateUrl = "https://www.example.com/company/";
}
現在的問題是如何添加內NavigateUrl超鏈接的文本一樣www.example .com/company/Microsoft或www.example.com/company/Google,這裏Microsoft
和Google
是鏈接的文本。在此先感謝,抱歉我的英文不好。
我已經習慣hplink.Text但它不工作,回到同一條鏈路www.example.com/company/ –
將一個調試點在** hplink.NavigateUrl **並檢查hplink的值。我相信你會找到不工作或張貼你能看到的價值的原因,以便我可以幫助你 –