asp.net传多个值到其它页面的方法

网站开发中,在页面之间的跳转,经常会用到传值,其中可能会传递多个值。

一、CommadArgument传多个值到其他页面。

像Gridview dataList repeater等数据绑定控件中,可以使用CommadArgument传多个值。

源的代码(aspx页面代码)如下:这个代码一般写在项模板中,如果你用的第一种方法就不需要加上onclick事件,直接点击数据绑定控件的RowCommand ,itemCommand事件,就行了。

  1. <asp:ImageButton runat="server" ImageUrl="~/images/bt_edit.gif" CommandArgument='<%#Eval("dict_id")+","+Eval("dict_type")%>' onclick="editImageButton_Click" Height="20" Width="20" />

方法1,如果你用的GridView 控件,找到RowCommand事件双击,用的dataList,repeater控件就找到ItemCommand事件双击,后台代码如下:

  1. object[] arg=e.CommandArgument.ToString().split(','); //注意是单引号
  2. string arg0=arg[0].ToString();
  3. string arg1=arg[1].ToString();

方法2,在项模板中放入LinkButton控件。这个比较常用,自己动手给这个控件加上onClick事件。其后台代码如下:

  1. LinkButton lbt=(LinkButton)sender;
  2. object[] arg=lbt.CommandArgument.ToString.split(',');
  3. string arg0=arg[0].ToString();
  4. string arg1=arg[1].ToString();

二、用超链接传值,也是一种常用的方法

前台代码:

  1. <a href="Default.aspx?dict_id")%>&type=<%#Eval("dict_type")%>">跳到Default.aspx页面</a>

后台:

  1. string strDict_id = Request.QueryString["dict_id"];
  2. string strDict_type= Request.QueryString["dict_type"];

……………………

算是刚接触BS,刚进入BS的神奇世界,一切还很懵懂。常言说,王八卖瓜——自卖自夸。我这就属于现学现卖。相信,随着学习的进展,会生意红火,卖得截越来越多的。