首页 > 代码库 > asp.net - GridView根据linkButton值不同跳转不同页面

asp.net - GridView根据linkButton值不同跳转不同页面

一,当前页面中,前台界面的主要代码:

<asp:TemplateField HeaderText="姓名">                            <ItemTemplate>                            <!--根据id去寻找详细信息-->                                <asp:LinkButton id="hlinkName" runat="server" CommandName="getDetail" CommandArgument= ‘<%# Bind("id") %>‘ Text=‘<%# Bind("name") %>‘></asp:LinkButton>                            </ItemTemplate>                        </asp:TemplateField>

 该代码是GridView中的一部分,主要实现的是当用户在‘姓名‘这一列对应的值上点击时,跳转到‘Detail.aspx‘页面,并选择当前行的详细信息,显示在‘Detail.aspx‘页面中.

当前页面GridView效果为:技术分享

实现GridView的后台代码为:

/// <summary>    /// 进入详细页面.    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    protected void gvw_RowCommand(object sender, GridViewCommandEventArgs e) {        if (e.CommandName.Equals("getDetail")) {            //根据将当前行的id传递到另一个页面中.            Response.Redirect(@"~\Detail.aspx?id=" + e.CommandArgument);        }    }

 二,Detail.aspx(目标)页面中,

  1,首先,在前台的GridView中,去掉GridView绑定数据源的控件AccessDataSource中的SelectCommand,并在后台代码手动设置SelectCommand内容,如,可以在Pape_Load的时候,加入:

string id = Request.QueryString["id"];        //access 数据源控件的SelectCommand的后台绑定.        AccessDataSrc.SelectCommand = "select * from [t_man] where [id]=@id";        AccessDataSrc.SelectParameters.Clear(); //清除可能已有选择参数.        AccessDataSrc.SelectParameters.Add("id", TypeCode.Int32, id);        AccessDataSrc.DataBind();

 即可.

asp.net - GridView根据linkButton值不同跳转不同页面