我正在尝试在Repeater控件中更改asp超链接NavigateUrl的Url。我使用以下代码从数据库中填写了我的转发器:
<。>在.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>
我的输出(使用转发器)看起来像这样
现在我添加一些额外的代码来填充转发器控件中的Hyperlink中的NavigateUrl
foreach (RepeaterItem item in Repeater1.Items)
{
HyperLink hplink = item.FindControl("companyid") as HyperLink;
hplink.NavigateUrl = "https://www.example.com/company/";
}
现在我的问题是如何在NavigateUrl中添加HyperLink的文本,例如www.example.com/company/Microsoft或www.example.com/company/Google,此处Microsoft
和Google
是链接的文字。提前谢谢,抱歉我的英语不好。
答案 0 :(得分:0)
您只需要使用navigateurl:
连接超链接的文本foreach (RepeaterItem item in Repeater1.Items)
{
HyperLink hplink = item.FindControl("companyid") as HyperLink;
hplink.NavigateUrl = "https://www.example.com/company/" + hplink.Text;
}