我有一个gridview,它从xml文件中提取数据。 gridview的其中一列是超链接字段。我想将XML文件中包含的URL字段绑定到此列。我认为我对下面的代码有正确的想法,但无法弄清楚如何完成它。 URL就是gridview的数据键。
protected void grdContents_RowCreated(object sender, GridViewRowEventArgs e)
{
((HyperLinkField)grdContents.Columns[1]).NavigateUrl =
}
答案 0 :(得分:1)
您可以在gridView_RowDataBound
事件上绑定超链接
protected void gridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType.Equals(DataControlRowType.DataRow))
{
HyperLinkField lnkHyper = (HyperLinkField)e.Row.FindControl("HyperLinkField1");
lnkHyper.NavigateUrl="";
}
}
试试这个。
或者您也可以在将源绑定到网格时使用DataBinder.Eval绑定url
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:HyperLink runat="server"
NavigateUrl="<%# DataBinder.Eval(Container.DataItem, "url") %>"></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
您也可以使用它,因为您还为网格视图提供数据源。