动态指定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>

 

 

posted @ 2007-12-28 09:13  邀月  阅读(793)  评论(0编辑  收藏  举报