`

HyperLinkColumn多参数问题

阅读更多

1使用DataGrid的时候如果你有一个asp:HyperLinkColumn又想使用多个需要绑定的参数作为链接的url,那么请改成模板列,使用普通的link标签<a>或者asp:HyperLink都可以,下面2种实现多绑定参数的解决方案。

(1)后台返回url
前台
<asp:TemplateColumn HeaderText="打开">
<ItemTemplate>
<asp:HyperLink Text="打开" NavigateUrl='<%# myfunc2(DataBinder.Eval(Container.DataItem,"vName"),DataBinder.Eval(Container.DataItem,"iAge"))%> ' Runat="server" Target="_blank" ID="Hyperlink1">
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateColumn>
后台
protected string myfunc2(object s1,object s2)
{
return "newpage.aspx?name="+s1.ToString()+"&age="+s2.ToString();
}
(2)直接前台设定url
<asp:TemplateColumn HeaderText="打开">
<ItemTemplate>
<asp:HyperLink Text="打开" NavigateUrl='<%#"newpage.aspx?name="+DataBinder.Eval(Container.DataItem, "vname")+"&age="+DataBinder.Eval(Container.DataItem, "iage") %>' Runat="server" Target="_blank">
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateColumn>

其实以上2个方案是一回事情,但是前者更加清晰,而且易于后台动态生成url。

2(1)用hyperlinkcolumn.

在itemdatabound里面写咯
if(e.item.itemindex>=0)
{
HyperLink hp = hp(e.item.cells[hpbutton列序数].findcontrol[hpbuttonID]);
hp.NavigateUrl = "***.aspx?bd1="+dropdownlist.selectvalue+"&bd2="+e.item.cells[绑定字段列序数].text;
}

(2)

foreach (DataGridItem item in dg.Items)
{
// 取到你的链接列
//item.cells[3].Controls[0]
// 转换为链接控件
// 赋值 - url, text...
}

分享到:
评论

相关推荐

    C#.NET学习好资料-编程常用功能及代码的总结与收藏

    1.打开新的窗口并传送参数: 2 2.为按钮添加对话框 2 3.删除表格选定记录 2 4.删除表格记录警告 2 5.点击表格行链接另一页 3 6.表格超连接列传递参数 4 7.表格点击改变颜色 4 8.关于日期格式 4 9.获取错误信息并到...

    ASP.NET程序中常用的三十三种代码

    1. 打开新的窗口并传送参数: 2.为按钮添加对话框 3.删除表格选定记录 4.删除表格记录警告 5.点击表格行链接另一页 6.表格超连接列传递参数 7.表格点击改变颜色 8.关于日期格式 9.获取错误信息并到指定页面 ...

    。NET经典技术

     <asp:HyperLinkColumn Target="_blank" headertext="ID号" DataTextField="id" NavigateUrl="aaa.aspx?id=' ;Container.DataItem, "数据字段1"&#41;%>' & name=';Container.DataItem, "数据字段2"&#41;%>' /> ...

    DataGrid中实现超链接的3种方法

    1.使用DataGrid中的超链接列—HyperLinkColumn 相信很多人都使用过datagrid中的超链接列,它很好用,默认情况下只能传递一个参数,如下所示: 代码如下:”CompanyName” DataNavigateUrlField=”CustomerID” ...

    ASP.NET常用代码

    &lt;asp:HyperLinkColumn Target="_blank" headertext="ID号" DataTextField="id" NavigateUrl="aaa.aspx?id='(Container.DataItem, "数据字段1")%&gt;' & name='(Container.DataItem, "数据字段2")%&gt;' /&gt; 7.表格点击...

    ASP.NET程序中常用的三十三种代码.txt

    &lt;asp:HyperLinkColumn Target="_blank" headertext="ID号" DataTextField="id" NavigateUrl="aaa.aspx?id=’  (Container.DataItem, "数据字段1")%&gt;’ & name=’(Container.DataItem, "数据字段2")%&gt;’ /&gt;  7....

    《ASP.NET与数据库程序设计》

    事件程序的参数 3-3-2 PostBack的设计 Page_Laod事件 AutoPostBack属性 3-3-4 HTML控制项的事件 3-4表单流程控制及设计 3-4-1使用表单的第一件事 3-4-2关于Form标记 3-4-3关于Page...

Global site tag (gtag.js) - Google Analytics