Page.PreviousPage.Master 执行母版页,而不是获取其值

本文关键字:获取 PreviousPage Master 执行 母版页 Page | 更新日期: 2023-09-27 18:35:59

每次我使用这个。Page.PreviousPage和像这样的Page.PreviousPage中的任何内容,它似乎执行页面而不是获取其值。

之所以这样说,是因为每当我在代码上使用它时,它都会将我重定向到我在 Masterage.aspx.cs 文件上设置的错误页面,该页面对用户可以访问的页面执行此操作。它只发生在这些行上,因为当我运行断点时,程序会重定向到这些行上的错误页面。

        if (this.Page.PreviousPage != null) //This checks if the previous page is not empty
        {
            GridView gridViewToExport = new GridView();
            string gridViewName = Request.QueryString["gridviewname"];
            //Check if the masterpage contentplaceholder exists
            if (this.Page.PreviousPage.Master.FindControl("CPH1") != null)
            {
                //If Exists then do this steps
                Control ContentPlaceHolder1 = this.Page.PreviousPage.Master.FindControl("CPH1");
                gridViewToExport = (GridView)ContentPlaceHolder1.FindControl(gridViewName);
            }
            else
            {
                //If is not existent, then continue with this.
                gridViewToExport = (GridView)this.Page.PreviousPage.FindControl(gridViewName);
            }
            frmExportarDatos.EnableViewState = false;
            frmExportarDatos.Controls.Add(gridViewToExport);
        }

我从中得到的错误是"这个。Page.PreviousPage' 抛出了一个类型为"System.Threading.ThreadAbortException"的异常 System.Web.UI.Page {System.Threading.ThreadAbortException}

Page.PreviousPage.Master 执行母版页,而不是获取其值

您只需在此处添加检查即可

if(Page.PreviousPage.Master ==  null)
  //Some code.
else
  //Again some code.