ASP.NET Tutorial/Page Lifecycle/previous page
Get previous page (C#)
<source lang="csharp">
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="CrossPage1" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>CrossPage1</title>
</head> <body>
<form id="form1" runat="server" >
First Name: <asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox>
Last Name: <asp:TextBox ID="txtLastName" runat="server"></asp:TextBox>
<asp:Button runat="server" ID="cmdPost" PostBackUrl="NextPage.aspx" Text="Cross-Page Postback" />
<asp:Button runat="server" ID="cmdTransfer" Text="Manual Transfer" OnClick="cmdTransfer_Click" Visible="False" />
</form>
</body> </html> File: Default.aspx.cs using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class CrossPage1 : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString["err"] != null) Page.Validate(); }
protected void cmdTransfer_Click(object sender, EventArgs e) { Server.Transfer("NextPage.aspx", true); } public string FullName { get { return txtFirstName.Text + " " + txtLastName.Text; } }
}
File: NextPage.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile="NextPage.aspx.cs" Inherits="CrossPage2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>Untitled Page</title>
</head> <body>
<form id="form1" runat="server" >
</form>
</body> </html>
File: NextPage.aspx.cs
using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class CrossPage2 : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) { if (PreviousPage != null) { lblInfo.Text = "You came from a page titled " + PreviousPage.Title + "
"; CrossPage1 prevPage = PreviousPage as CrossPage1; if (prevPage != null) { lblInfo.Text += "You typed in this: " + prevPage.FullName + "
"; } } }
}</source>
Performing Cross-Page Posts
<source lang="csharp">
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server">
<title>Button Search</title>
</head> <body>
<form id="form1" runat="server">
<asp:Label id="lblSearch" Text="Search:" Runat="server" /> <asp:TextBox id="txtSearch" Runat="server" /> <asp:Button id="btnSearch" Text="Go!" PostBackUrl="NextPage.aspx" Runat="server" />
</form>
</body> </html> File: NextPage.aspx <%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">
void Page_Load() { if (PreviousPage != null) { TextBox txtSearch = (TextBox)PreviousPage.FindControl("txtSearch"); lblSearch.Text = String.Format("Search For: {0}", txtSearch.Text); } }
</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server">
<title>Button Search Results</title>
</head> <body>
<form id="form1" runat="server">
<asp:Label id="lblSearch" Runat="server" />
</form>
</body> </html></source>
Use PreviousPage.FindControl to get a control in Previous Page (VB.net)
<source lang="csharp">
<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server">
<title>Button Search</title>
</head> <body>
<form id="form1" runat="server">
<asp:Label id="lblSearch" Text="Search:" Runat="server" /> <asp:TextBox id="txtSearch" Runat="server" /> <asp:Button id="btnSearch" Text="Go!" PostBackUrl="NextPage.aspx" Runat="server" />
</form>
</body> </html> File: NextPage.aspx
<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">
Sub Page_Load() If Not IsNothing(PreviousPage) Then Dim txtSearch As TextBox = CType(PreviousPage.FindControl("txtSearch"), TextBox) lblSearch.Text = String.Format("Search For: {0}", txtSearch.Text) End If End Sub
</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server">
<title>Button Search Results</title>
</head> <body>
<form id="form1" runat="server">
<asp:Label id="lblSearch" Runat="server" />
</form>
</body> </html></source>