Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# OnPageIndexchange与OnItemCommand发生冲突_C#_Asp.net_Datagrid - Fatal编程技术网

C# OnPageIndexchange与OnItemCommand发生冲突

C# OnPageIndexchange与OnItemCommand发生冲突,c#,asp.net,datagrid,C#,Asp.net,Datagrid,我面临着一个小问题,两个事件相互冲突 我有一个显示链接按钮的列,这样当用户单击它时,它会将他们引导到另一个页面,显示datagrid特定行中的数据 在datagrid下面,我有一些页面,恰好也是一个链接按钮,当用户单击第2页时,它会显示datagrid的第2页数据 现在的问题是,当我想单击第2页时,它会重定向到下一页,这是我的ItemCommand事件 有没有什么方法可以让datagrid与众不同,这是正确的链接按钮 这样它们就不会互相冲突 受保护的void RPYGrid_ItemSelect

我面临着一个小问题,两个事件相互冲突

我有一个显示链接按钮的列,这样当用户单击它时,它会将他们引导到另一个页面,显示datagrid特定行中的数据

在datagrid下面,我有一些页面,恰好也是一个链接按钮,当用户单击第2页时,它会显示datagrid的第2页数据

现在的问题是,当我想单击第2页时,它会重定向到下一页,这是我的ItemCommand事件

有没有什么方法可以让datagrid与众不同,这是正确的链接按钮

这样它们就不会互相冲突

受保护的void RPYGrid_ItemSelect(对象发送方,DataGridCommandEventArgs e) { 数据集dsGenRequestPayment=新数据集(); dsGenRequestPayment=GenerateRequestPayment(); DataTable dtRequest=新DataTable(); dtRequest=dsGenRequestPayment.Tables[0]

    if (((LinkButton)e.CommandSource).CommandName == "ItemSelect")
    {
        try
        {
            int iIndex = e.Item.DataSetIndex;
            string sId = RPYGrid.DataKeys[iIndex].ToString();

            foreach (DataRow drRequest in dtRequest.Rows)
            {
                string sRequestID = drRequest["RequestNo"].ToString();

                if (sId == sRequestID)
                {
                    sRequestNo = drRequest["RequestNo"].ToString();
                    sAmount = drRequest["RequestAmt"].ToString();
                    sAttachment = drRequest["FilePath"].ToString();
                    sReqCompanyID = drRequest["RequestCompanyID"].ToString();
                    sPayCompanyID = drRequest["PayerCompanyID"].ToString();
                    sReqCoName = drRequest["RequestCoName"].ToString();
                    sPayCoName = drRequest["PayerCoName"].ToString();
                    sRequestDate = drRequest["RequestDt"].ToString();
                }
            }
            dtRequest.Clear();
            dsGenRequestPayment.Clear();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message.ToString());
        }

    }
}

protected void RPYGrid_PageIndexChanged(object sender, DataGridPageChangedEventArgs e)
{
    RPYGrid.CurrentPageIndex = e.NewPageIndex;
    GenerateRequestData();
}

在linkbuttons中使用不同的命令名时,这种情况还会发生吗? 我想我不太明白你的问题

这就是你想做的吗

 Select Case (CType(e.CommandSource, LinkButton)).CommandName
            Case "paging"
               'dopaging
            case "redirect"
               'doredirect

            Case Else
  End Select

嘿,Pablo,谢谢你给我时间来回答我的问题…我有一个linkbutton,它有一个名为ItemSelect的命令,当用户单击这个linkbutton时,它将捕获datagrid中特定行中的详细信息,并将这些详细信息存储为会话。但是,在datagrid下面,我希望允许用户单击NumericPages、 所以它会切换到datagrid的下一页。但目前,触发PageIndexChanged的NumericPages会触发我的ItemSelect命令,而不是它自己的命令。我一直在对它进行测试,但它仍然无法工作。。。