Mega Code Archive

 
Categories / ASP.Net / Page
 

Post data to another page using the cross-page posting features of ASP NET 2 0 and 3 5

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"      Inherits="Default" %> <!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>Simple cross-page posting</title> </head> <body>     <div id="pageContent">         <form id="form1" runat="server">             <asp:MultiView ID="MultiView1" runat="server">                 <asp:View runat="server" ID="ChooseActionView">                     <h3>                     I want to                     <asp:DropDownList ID="DropDownList1"                                        runat="server"                                        AutoPostBack="True"                                        OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">                         <asp:ListItem>Hire </asp:ListItem>                         <asp:ListItem>Buy </asp:ListItem>                         <asp:ListItem>Spy </asp:ListItem>                     </asp:DropDownList>                     </h3>                             </asp:View>                 <asp:View runat="server" ID="ShowResultsView">                     <asp:Label runat="server" ID="Msg" /><br /><br />                     <asp:LinkButton ID="LinkButton1"                                      runat="server"                                      OnClick="LinkButton1_Click">Choose an action</asp:LinkButton>                 </asp:View>             </asp:MultiView>             <hr />             <h3>Post to another page</h3>             <p>(<strong>NB:</strong> Try typing <em>AAA</em>)</p>             Name:             <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>             <asp:RequiredFieldValidator ID="RequiredFieldValidator1"                                          runat="server"                                          ControlToValidate="TextBox1"                 Text="*" />             <asp:CustomValidator                   ID="CustomValidator1"                   runat="server"                   Text="*"                   ControlToValidate="TextBox1"                   OnServerValidate="CustomValidator1_ServerValidate" />             <asp:Button ID="Button1"                          runat="server"                          Text="Apply request..."                          OnClick="Button1_Click"                          PostBackUrl="NextPage.aspx" />             <br />         </form>     </div> </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.HtmlControls; using System.IO; public partial class Default : System.Web.UI.Page {     protected void Page_Load(object sender, EventArgs e)     {     if (!IsPostBack)       MultiView1.ActiveViewIndex = 0;     }   protected void Button1_Click(object sender, EventArgs e)   {     Response.Write("This is NOT unreachable code");     StreamWriter w = new StreamWriter("test.txt");     w.WriteLine("This is NOT unreachable code");     w.Close();   }   protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)   {     Msg.Text = String.Format("Congratulations! You're going to <b>{0}</b>", DropDownList1.SelectedItem.Text);     MultiView1.ActiveViewIndex = 1;   }   protected void LinkButton1_Click(object sender, EventArgs e)   {     MultiView1.ActiveViewIndex = 0;   }     protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)     {         args.IsValid = false;         if (String.Equals(args.Value, "AAA"))             args.IsValid = true;     } } File: NextPage.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile="NextPage.aspx.cs"      Inherits="NextPage" %> <!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>Welcome to the guru's page</title> </head> <body>         <div id="pageContent">         <form id="form1" runat="server">                     <h2>This is the                  <asp:Label ID="GuruName" runat="server" ForeColor="blue" />                 home page. Thank you for requesting to                  <asp:Label ID="GuruAction" runat="server" ForeColor="blue" />             </h2>         </form>     </div> </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.HtmlControls; public partial class NextPage : System.Web.UI.Page {     protected void Page_Load(object sender, EventArgs e)     {     if (PreviousPage == null)      {       Response.Write("Sorry, you can only invoke me through cross-page posting.");       Response.End();       return;     }         if (!PreviousPage.IsValid)         {             Response.Write("Sorry, the original page contains invalid input.");             Response.End();             return;         }     DropDownList dd = (DropDownList) PreviousPage.FindControl("DropDownList1");     string action = dd.SelectedItem.Text;     GuruAction.Text = action;     TextBox txt = (TextBox) PreviousPage.FindControl("TextBox1");     GuruName.Text = txt.Text;     } }