Asp.net 将url添加到gridview中的超链接字段

Asp.net 将url添加到gridview中的超链接字段,asp.net,gridview,hyperlink,Asp.net,Gridview,Hyperlink,我有一个动态网格视图。我在页面加载中添加列 我将此代码用于添加超链接字段: string[] url = new string[1]; url[0] = field.InternalName; HyperLinkField link = new HyperLinkField(); link.HeaderText = field.Title; link.DataNavigateUrlFields = url; link.DataNavigateUrlFormatString = "{0

我有一个动态网格视图。我在页面加载中添加列

我将此代码用于添加超链接字段:

 string[] url = new string[1];
 url[0] = field.InternalName;
 HyperLinkField link = new HyperLinkField();
 link.HeaderText = field.Title;
 link.DataNavigateUrlFields = url;
 link.DataNavigateUrlFormatString = "{0}";
 link.DataTextField = field.InternalName;
 link.SortExpression = field.InternalName;
 grid.Columns.Add(link);
我的问题是:例如,我的url是“http://Test1.docx“


我要一套http://Test1.docx“

如果我正确理解问题所在。
字段.InternalName
字段包含“http://Test1.docx,,您正在为其分配字符串数组,并试图仅获取逗号前的第一个值

在这种情况下,需要拆分字符串:

string[] urlSplit = field.InternalName.Split(',');  
link.DataNavigateUrlFields = urlSplit[0];

如果我理解正确,您只需要
link.datanavigationeurlfields=url.Split(',')[0].Trim()或者我理解错误了吗?DataNavigateUrlFields获取字符串[]。我使用此代码..字符串[]str=field.InternalName.Split(',');link.DataNavigateUrlFields=str;link.DataNavigateUrlFormatString=“{0}”。。。但是不起作用。试试:string[]str=field.InternalName.Split(',');link.DataNavigateUrlFields=str[0];field.InternalName是数据源的列名,因此str[0]=field.InternalNameNo。只是str[0]从“field.InternalName”中获取逗号前的第一个URL。field.InternalName是否包含“,”?如果是这样,那么您只需要尝试我之前评论中的代码,或者您可能需要更详细地了解您试图实现的目标。DataNavigateUrlFields get string[],当我使用您的代码时,我会遇到错误。