数据网格列中动态创建的HTML链接

时间:2014-03-17 12:51:51

标签: c# asp.net datagrid

我有一个数据网格,其中一列是文件的链接。基本URL是代码隐藏中的公共变量。除基本URL

外,所有工作都按预期工作
<asp:BoundField DataField="FileName" HtmlEncode="False" DataFormatString="<a target='_blank' href='<%#BaseURL %>{0}'>{0}</a>" />

我在页面中看到的是

<a href="<%#BaseURL %>SS82009310X_U_2013_07_05_01_55.mpg" target="_blank">

我需要BaseURL的字符串值(类似于http://myserver/myapp/

1 个答案:

答案 0 :(得分:0)

您可以使用后面的代码并填充您的列,如下所示: 在你.aspx页面上定义超链接列,如下所示:

<asp:TemplateField> <ItemTemplate> <asp:HyperLink ID="hypSelect" runat="server" ToolTip="Click for more details." ImageUrl="~/images/icons/your_icon.png" NavigateUrl=''>More details</asp:HyperLink> </ItemTemplate> </asp:TemplateField>

然后在你的代码中,定义一个OnRowDataBound事件并执行以下操作: public void gvPAR_RowDataBound(Object Sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { HyperLink hypSelect = (HyperLink)e.Row.FindControl("hypSelect"); hypSelect.NavigateUrl = "your string url here or call a helper method"; } }

我希望这会有所帮助......