如何使用GridView
在C#
中绑定超链接?
ASP.NET
代码:
<asp:GridView ID="GridView1" runat="server" onselectedindexchanged="GridView1_SelectedIndexChanged" AutoGenerateColumns="False" DataSourceID="SqlDataSource1">
<Columns>
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<asp:HyperLink id="HyperLink2" NavigateUrl="" Text="<%#Eval("pdfname") %>" runat="server"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
答案 0 :(得分:2)
只需使用eval:
<asp:HyperLink id="HyperLink2" NavigateUrl='<%#Eval("YourUrl") %>' Text='<%#Eval("pdfname") %>' runat="server"/>
如果您的Url位于名为“YourUrl”
的DataBound项属性中如果需要动态构建它,可以使用方法:
<asp:HyperLink id="HyperLink2" NavigateUrl='<%# CreatePageUrl(Container.DataItem)%>' Text='<%#Eval("pdfname") %>' runat="server"/>
在您的代码中定义CreatePageUrl方法。
答案 1 :(得分:0)
使用OnRowDataBound网格视图的事件找到超链接控件然后绑定你想要的网址。实施例。
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
HyperLink hl= (HyperLink)e.Row.findControl("HyperLink2");
hl.NavigateUrl = "Your Url";
}
}