(原创)怎么为DataGrid中的链接设置多个参数

在使用DataGrid的时候如果你有一个asp:HyperLinkColumn又想使用多个需要绑定的参数作为链接的url,那么请改成模板列,使用普通的link标签<a>或者asp:HyperLink都可以,下面2种实现多绑定参数的解决方案。同样对http://www.cnblogs.com/lovecherry/archive/2005/03/25/125487.html进行改造。
(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。

posted @ 2005-03-25 13:12 lovecherry 阅读(6424) 评论(26)  编辑 收藏 网摘 所属分类: webform

  回复  引用    
#1楼2005-04-15 11:20 | VIP会员[未注册用户]
CS0246: 找不到类型或命名空间名称“Container”(是否缺少 using 指令或程序集引用?)

这个怎么解决?

  回复  引用    
#2楼2005-05-20 09:07 | sunny
DataTextField="subject" HeaderText="主题"></asp:HyperLinkColumn>
<asp:TemplateColumn HeaderText="主题">
<ItemTemplate>
<asp:HyperLink id="link" Text='<%# DataBinder.Eval(Container.dataItem,"subject")%>' Visible="true" Runat="server" Font-Underline="true" EnableViewState="true" NavigateUrl='<%# "WebForm2.aspx?titles_id="+HttpUtility.Urlencode(DataBinder.Eval(container.dataitem,"titles_id")) + "&name=" + 用户名.Text%>'>
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateColumn>
这样为什么用户名传的值为空,请指教,谢谢

  回复  引用  查看    
#3楼[楼主]2005-05-20 09:27 | lovecherry      
用户名是textbox?
  回复  引用    
#4楼2005-08-04 17:29 | SSC[未注册用户]
刚开始开发.谢谢大家,我爱你们.

  回复  引用    
#5楼2005-09-14 09:44 | 炎冰[未注册用户]
如果我用一个函数,myfunc2(DataBinder.Eval(Container.DataItem,"vName","vage"))是否可以成立?
后台
myfunc2(name as string ,age as string)

  回复  引用    
#6楼2006-07-01 21:10 | wping[未注册用户]
帖子真好...
谢谢您的无私...
向您致敬...
顺祝:"技术无极限".

  回复  引用    
#7楼2006-10-29 17:34 | 风轻扬[匿名][未注册用户]
呵呵
收获不小!

  回复  引用    
#8楼2007-05-28 14:17 | gdfgdf[未注册用户]
根本不能运行,你调度过没啊,不要想当然,想和运行出来是两马事啊.晕哪,以后要调过再发到网上,真是浪费人时间.
  回复  引用    
#9楼2007-11-23 08:53 | ssss[未注册用户]
cao na you ge <asp:hyperlink>? zhi you ge <asp:hyperlinkcolumn>



发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 125510




相关文章:

相关链接: