C#linkbutton不在Updatepanel中的Gridview中触发

时间:2013-05-21 11:35:45

标签: redirect gridview updatepanel linkbutton

我希望有人可以帮助我。我在网上搜索了一个合适的答案,但还没有找到答案。

我在LinkButtonGridView)中有以下GridView2UpdatePanel设置为UpdateMode='Conditional'

<ItemTemplate>
    <asp:LinkButton ID="lblSCcomments" runat="server" Width="80" 
        Text='<%#Eval("ShortCode")%>' CommandName="hyperSC" 
        OnCommand="GridView2_Command" 
        CommandArgument='<%#Eval("ShortCode")%>'/>
</ItemTemplate>

这个代码背后:

protected void GridView2_Command(object sender, CommandEventArgs e)
{
    if (e.CommandName == "hyperSC")
    {
        string sc = e.CommandArgument.ToString();            
        lblShortCode.Text = sc;
        Session["scode"] = sc;
        Server.Transfer("~/MemberPages/reviews.aspx");
    }
 }

不幸的是,当我点击链接时,命令没有触发。但这是在UpdatePanel之外的工作。我不需要Gridview进行刷新,只需要使用选定的行Session填充lblShortCode变量和Shortcode标签,然后重定向到另一个页面。

1 个答案:

答案 0 :(得分:0)

您必须在GridView中添加OnRowCommand事件,例如<asp:GridView ID="GridView2" runat="server" OnRowCommand="GridView2_RowCommand">,并在此事件中执行 .CS 代码:

protected void GridView2_RowCommand(object sender, CommandEventArgs e)
{
    if (e.CommandName == "hyperSC")
    {
        string sc = e.CommandArgument.ToString();            
        lblShortCode.Text = sc;
        Session["scode"] = sc;
        Server.Transfer("~/MemberPages/reviews.aspx");
    }
}

从LinkBut​​ton中删除OnCommand事件。