title: Why is Page.PreviousPage always null?
body: <p>I am experimenting with cross-page posting by following <a href="http://msdn.microsoft.com/en-us/library/ms178139.aspx" rel="noreferrer">this MSDN article</a>. I have this code:</p>
  
  <p><strong>CrossPagePosting1.aspx</strong></p>
  
  <pre><code>&lt;form id="form1" runat="server"&gt;
      &lt;h1&gt;Page 1&lt;/h1&gt;
      &lt;asp:TextBox ID="TextBox1" runat="server"&gt;&lt;/asp:TextBox&gt;&lt;br /&gt;
      &lt;asp:Button ID="Button1" runat="server" Text="Button" PostBackUrl="CrossPagePosting2.aspx"/&gt;
  &lt;/form&gt;
  </code></pre>
  
  <p><strong>CrossPagePosting2.aspx</strong></p>
  
  <pre><code>&lt;form id="form1" runat="server"&gt;
      &lt;h1&gt;Page 2&lt;/h1&gt;
      &lt;asp:Label ID="Label1" runat="server" Text=""&gt;&lt;/asp:Label&gt;
  &lt;/form&gt;
  </code></pre>
  
  <p><strong>CrossPagePosting2.aspx.cs</strong></p>
  
  <pre><code>protected void Page_Load(object sender, EventArgs e)
  {
      TextBox TextBox1 = (TextBox)Page.PreviousPage.FindControl("TextBox1");
      Label1.Text = TextBox1.Text;
  }
  </code></pre>
  
  <p>This code above produces a <code>NullReferenceException</code> at <code>Page.PreviousPage</code>. Why?</p>
  
  <p>This is an ASP.Net 4.0 application.</p>
  
  <p>It uses FriendlyUrls, which is the default.</p>
  
  <p><strong>NOTE:</strong> I do NOT want the previous page to be strongly-typed, e.g. using the <code>PreviousPageType</code> directive. According to the referenced article, this shouldn't be necessary.</p>