This is most frequently asked during ASP.NET interview questionsBy default, button controls in ASP.NET pages post back to the same page that contains the button, where you can write an event handler for the post. Remember this question is fromis a feature in ASP.NET 2.0. In most cases this is the desired behavior, but occasionally you will also want to be able to post to another page in your application. The Server.Transfer method can be used to move between pages, however the URL does not change. Instead, the cross page-posting feature in ASP.NET 2.0 allows you to fire a normal post back to a different page in the application. In the target page, you can then access the values of server controls in the source page that initiated the post back.
To use cross page posting, you can set the PostBackUrl property of a Button, LinkButton or ImageButton control, which specifies the target page. In the target page, you can then access the PreviousPage property to retrieve values from the source page. By default, the PreviousPage property is of type Page, so you must access controls using the FindControl method. You can also enable strongly-typed access to the source page by setting the @PreviousPageType directive in the target page to the virtual path or Type name of the source page.
Here is a systematic guide for implementing the cross-page post back using controls that implement the IButtonControl interface.
- Create a Web Form and insert a Button control on it using the VS .NET designer.
- Set the button’s PostBackUrl property to the Web Form you want to post back. Forinstance in this case it is “nextpage.aspx”
<asp:Button ID=”Button1″ runat=”server”
PostBackUrl=”~/nextpage.aspx” Text=”Post to nextpage” />
Also see following ASP.NET Training and interview questionsvideo on Session VS Viewstate difference
The above question is taken from the book .NET interview questions published by BPB publication and written by ShivprasadKoirala.