我已经对此进行了一些搜索,但我似乎无法找到与我的问题相关的任何内容,但如何在转发器控件中获取元素Id?例如,我有以下内容:
foreach (RepeaterItem item in Rpt.Items)
{
HyperLink Url = item.FindControl("Url") as HyperLink;
Url.NavigateUrl = link from db;
}
在我想要获取的代码后面并在上面的代码中设置超链接的Id(url),但由于某种原因,我无法访问代码,因为它无法识别。获得Id的最佳方式是什么?
在我的c#代码中,我只想像这样设置url: Url.NavigateUrl =' https://stackoverflow.com';
修改
现在它没有触及foreach循环中的代码。
{{1}}
非常感谢
答案 0 :(得分:2)
您可以使用以下方式找到:
使用ItemDataBound事件:
protected void Rpt_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
HyperLink hplUrl = (HyperLink)e.Item.FindControl("Url");
hplUrl.NavigateUrl = 'https://stackoverflow.com';
}
}
或使用所有行
foreach (RepeaterItem item in Rpt.Items)
{
HyperLink Url = item.FindControl("Url") as HyperLink;
}
答案 1 :(得分:0)
下面的代码可以帮助您:
foreach (RepeaterItem item in Rpt.Items)
{
HyperLink lnk = item.FindControl("Url") as HyperLink;
}