动态指定DataGrid中多个参数的超链接列(downmoon)

.net 自带的DataGrid 超链接列只能指定一个动态参数, 可以通过以下方式来改进:
第一种:后台再绑定:

private void mygrid_ItemDataBound(object sender, DataGridItemEventArgs e)
  
{
   
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
   
{
    HyperLink link  
= (HyperLink)e.Item.Cells[0].Controls[0]; 
   
    
string url = link.NavigateUrl;
    url 
+= "?id=" + e.Item.Cells[1].Text + "&id2=" + e.Item.Cells[2].Text;
    link.NavigateUrl 
= url;
   }

  }

第二种:前台增加模板列:

<asp:TemplateColumn HeaderText="test">
       
<ItemTemplate>
        
<asp:HyperLink runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.productID") %>' NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.productName", "detailspage.aspx?id={0}&id2="+DataBinder.Eval(Container, "DataItem.productID")) %>'>
        
</asp:HyperLink>
       
</ItemTemplate>
邀月注:本文版权由邀月和博客园共同所有,转载请注明出处。
助人等于自助!  3w@live.cn
原文地址:https://www.cnblogs.com/downmoon/p/1017880.html