O'Reilly logo

ASP.NET Cookbook by Geoffrey T. LeBlond, Michael A Kittel

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

18.8. Creating and Using Page Templates

Problem

Your application uses a common page format for most of its pages, and you want to reuse and simplify the maintenance of the shared HTML.

Solution

Review the HTML to determine what is common on all of your pages, and then create a user control for each of the common sections. The HTML page used as the basis for our example is shown in Example 18-21. Our user control for the top of the page is shown in Example 18-22 through Example 18-24 and for the bottom of the page in Examples Example 18-25 through Example 18-27.

Next, create a base page class that inherits from System.Web.UI.Page and loads the user controls you created at runtime. This base page class, along with the user controls containing the HTML for your pages, constitutes a “reusable HTML page template.” Example 18-28 and Example 18-29 show the VB and C# versions of our base page class that demonstrate this solution.

You can then create the pages for your application by inheriting from the base class you have created instead of System.Web.UI.Page and add only the HTML that is unique to each page. Example 18-30 through Example 18-32 show the .aspx file and VB and C# code-behind file for an application that demonstrate the use of the base page class.

Discussion

Most applications use a common HTML design for the majority of their pages, and developers often find themselves cutting and pasting the common HTML in order to repeat the design on each page. Because of the replication, maintenance ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required