title: ReportViewer is blocking other functionalites until the loading of report viewer is completed
body: <p>This is the ReportViewer control:</p>
  
  <pre><code>  &lt;form id="reportForm" runat="server"&gt;
      &lt;asp:ScriptManager ID="ScriptManager1" runat="server" AsyncPostBackTimeout="360000"&gt;
      &lt;/asp:ScriptManager&gt;
      &lt;div&gt;
        &lt;rsweb:ReportViewer ID="mainReportViewer" runat="server" Width="100%" 
              Height="100%" SizeToReportContent="True"  &gt;
        &lt;/rsweb:ReportViewer&gt;
      &lt;/div&gt;
    &lt;/form&gt;
  </code></pre>
  
  <p>This is the code behind page:</p>
  
  <pre><code>protected void Page_Load(object sender, EventArgs e)
  {
      if (Session["UserInfo"] == null)
      {
          Response.Redirect("~/account/login", true);
      }
      string ReportPath = "";
      try
      {
          if (mainReportViewer.Page.IsPostBack) return;
  
          mainReportViewer.ProcessingMode = ProcessingMode.Remote;
  
          mainReportViewer.ServerReport.ReportServerUrl = new Uri(
              @"" + ConfigurationManager.AppSettings["ReportServer"].ToString()
          );
          ReportPath = Convert.ToString(ConfigurationManager.AppSettings["ReportPath"]);
          if (!string.IsNullOrEmpty(ReportPath))
          {
              if (ReportPath.Substring(0, 1) == "/")
              {
                  ReportPath = ReportPath.Substring(1, ReportPath.Length - 1);
              }
              if (ReportPath.Substring(ReportPath.Length - 1, 1) != "/")
              {
                  ReportPath = ReportPath + '/';
              }
          }
          else
          {
              ReportPath = "";
          }
          ReportPath = ReportPath + Request["Report"].ToString().Split(".".ToCharArray())[0].ToString();
          mainReportViewer.ServerReport.ReportPath = @"/" + ReportPath;
  
          ReportParameterCollection parmCol = new ReportParameterCollection();
          string sFrom = "";
          string sTo = "";
          string dateRange = Request["dateRange"].ToString();
          string[] obj = dateRange.Split("-".ToCharArray());
          if (obj.Length &gt; 1)
          {
              sFrom = obj[0].ToString();
              sTo = obj[1].ToString();
          }
          else
              sFrom = obj[0].ToString();
          else if (Request["Report"].ToString().ToUpper() == "SOURCEWISEREPORT_AR.RDL")
          {
              string[] frommonthyear = sFrom.Split(',');
              string[] tomonthyear = sTo.Split(',');
  
              parmCol.Add(new ReportParameter("FromYear", frommonthyear[1]));
              parmCol.Add(new ReportParameter("FromMonth", frommonthyear[0]));
              parmCol.Add(new ReportParameter("ToYear", tomonthyear[1]));
              parmCol.Add(new ReportParameter("ToMonth", tomonthyear[0]));
              parmCol.Add(new ReportParameter("lang", Convert.ToString(Session["Culture"])));
          }
          mainReportViewer.PromptAreaCollapsed = true;
          mainReportViewer.AsyncRendering = true;
          mainReportViewer.ServerReport.Timeout = System.Threading.Timeout.Infinite;
          mainReportViewer.ServerReport.SetParameters(parmCol);
          mainReportViewer.ShowParameterPrompts = true;
          mainReportViewer.LocalReport.EnableHyperlinks = true;
          mainReportViewer.ServerReport.Refresh();
      }
      catch (Exception ex)
      {
          CommonFunctions.createLog("Reports : " + ex.Message);
      }
  }
  </code></pre>
  
  <p>When I try to view report(which is a view in asp.net mvc) it opens in a new tab to view the report (which is aspx page with codefile) and mean while if I try to open any link from the previous tab the page doesn't get loaded until the report in the new tab is completely loaded. I tried doing everything but no solution found yet. Need help</p>