ASP

121
ASP.NET Tutorial - with ASP.NET 2.0 « W3Schools Home Next Chapter » ASP.NET is the next generation ASP, but it's not an upgraded version of ASP. ASP.NET is an entirely new technology for server-side scripting. ASP.NET is a part of the Microsoft .NET framework, and a powerful tool for creating dynamic and interactive web pages. Start learning ASP.NET now! ASP.NET References At W3Schools you will find complete ASP.NET references about built-in objects and components, and their properties and methods: HTML server controls reference Web server controls reference Validation server controls reference ASP.NET Examples ASP.NET examples A collection of ASP.NET examples. « W3Schools Home Next Chapter » ASP.NET Introduction « Previous Next Chapter » What You Should Already Know Before you continue you should have a basic understanding of the following: WWW, HTML, XML and the basics of building Web pages Scripting languages like JavaScript or VBScript The basics of server side scripting like ASP or PHP If you want to study these subjects first, find the tutorials on our Home Page What is Classic ASP? Microsoft's previous server side scripting technology ASP (Active Server Pages) is now often called classic ASP. ASP 3.0 was the last version of classic ASP. To learn more about classic ASP, you can study our ASP tutorial .

Transcript of ASP

Page 1: ASP

ASP.NET Tutorial - with ASP.NET 2.0

« W3Schools Home Next Chapter »

ASP.NET is the next generation ASP, but it's not an upgraded version of ASP. ASP.NET is an entirely new technology for server-side scripting.

ASP.NET is a part of the Microsoft .NET framework, and a powerful tool for creating dynamic and interactive web pages.

Start learning ASP.NET now!

ASP.NET References

At W3Schools you will find complete ASP.NET references about built-in objects and components, and their properties and methods:

HTML server controls reference

Web server controls reference

Validation server controls reference

ASP.NET Examples

ASP.NET examplesA collection of ASP.NET examples.

« W3Schools Home Next Chapter »

ASP.NET Introduction

« Previous Next Chapter »

What You Should Already Know

Before you continue you should have a basic understanding of the following:

WWW, HTML, XML and the basics of building Web pages

Scripting languages like JavaScript or VBScript

The basics of server side scripting like ASP or PHP

If you want to study these subjects first, find the tutorials on our Home Page

What is Classic ASP?

Microsoft's previous server side scripting technology ASP (Active Server Pages) is now often called classic ASP.

ASP 3.0 was the last version of classic ASP.

To learn more about classic ASP, you can study our ASP tutorial.

Page 2: ASP

ASP.NET is NOT ASP

ASP.NET is the next generation ASP, but it's not an upgraded version of ASP.

ASP.NET is an entirely new technology for server-side scripting. It was written from the ground up and is not backward compatible with classic ASP.

You can read more about the differences between ASP and ASP.NET in the next chapter of this tutorial.

ASP.NET is the major part of the Microsoft's .NET Framework.

What is ASP.NET?

ASP.NET is a server side scripting technology that enables scripts (embedded in web pages) to be executed by an Internet server.

ASP.NET is a Microsoft Technology

ASP stands for Active Server Pages

ASP.NET is a program that runs inside IIS

IIS (Internet Information Services) is Microsoft's Internet server

IIS comes as a free component with Windows servers

IIS is also a part of Windows 2000 and XP Professional

What is an ASP.NET File?

An ASP.NET file is just the same as an HTML file

An ASP.NET file can contain HTML, XML, and scripts

Scripts in an ASP.NET file are executed on the server

An ASP.NET file has the file extension ".aspx"

How Does ASP.NET Work?

When a browser requests an HTML file, the server returns the file

When a browser requests an ASP.NET file, IIS passes the request to the ASP.NET engine on the server

The ASP.NET engine reads the file, line by line, and executes the scripts in the file

Finally, the ASP.NET file is returned to the browser as plain HTML

What is ASP+?

ASP+ is the same as ASP.NET.

ASP+ is just an early name used by Microsoft when they developed ASP.NET.

The Microsoft .NET Framework

The .NET Framework is the infrastructure for the Microsoft .NET platform.

The .NET Framework is an environment for building, deploying, and running Web applications and Web Services.

Microsoft's first server technology ASP (Active Server Pages), was a powerful and flexible "programming language". But it was too code oriented. It was not an application framework and not an enterprise development tool.

The Microsoft .NET Framework was developed to solve this problem.

.NET Frameworks keywords:

Page 3: ASP

Easier and quicker programming

Reduced amount of code

Declarative programming model

Richer server control hierarchy with events

Larger class library

Better support for development tools

The .NET Framework consists of 3 main parts:

Programming languages:

C# (Pronounced C sharp)

Visual Basic (VB .NET)

J# (Pronounced J sharp)

Server technologies and client technologies:

ASP .NET (Active Server Pages)

Windows Forms (Windows desktop solutions)

Compact Framework (PDA / Mobile solutions)

Development environments:

Visual Studio .NET (VS .NET)

Visual Web Developer

This tutorial is about ASP.NET.

ASP.NET 2.0

ASP.NET 2.0 improves upon ASP.NET by adding support for several new features.

You can read more about the differences between ASP.NET 2.0 and ASP.NET in the next chapter of this tutorial.

ASP.NET 3.0

ASP.NET 3.0 is not a new version of ASP.NET. It's just the name for a new ASP.NET 2.0 framework library with support for Windows Presentation Foundation, Windows Communication Foundation, Windows Workflow Foundation; and Windows CardSpace.

ASP.NET 3.0 is not covered in this tutorial.

« Previous Next Chapter »

ASP.NET vs. ASP

« Previous Next Chapter »

ASP.NET has better language support, a large set of new controls, XML-based components, and better user authentication.

ASP.NET provides increased performance by running compiled code.

ASP.NET code is not fully backward compatible with ASP.

Page 4: ASP

New in ASP.NET

Better language support

Programmable controls

Event-driven programming

XML-based components

User authentication, with accounts and roles

Higher scalability

Increased performance - Compiled code

Easier configuration and deployment

Not fully ASP compatible

Language Support

ASP.NET uses ADO.NET.

ASP.NET supports full Visual Basic, not VBScript.

ASP.NET supports C# (C sharp) and C++.

ASP.NET supports JScript.

ASP.NET Controls

ASP.NET contains a large set of HTML controls. Almost all HTML elements on a page can be defined as ASP.NET control objects that can be controlled by scripts.

ASP.NET also contains a new set of object-oriented input controls, like programmable list-boxes and validation controls.

A new data grid control supports sorting, data paging, and everything you can expect from a dataset control.

Event Aware Controls

All ASP.NET objects on a Web page can expose events that can be processed by ASP.NET code.

Load, Click and Change events handled by code makes coding much simpler and much better organized.

ASP.NET Components

ASP.NET components are heavily based on XML. Like the new AD Rotator, that uses XML to store advertisement information and configuration.

User Authentication

ASP.NET supports form-based user authentication, cookie management, and automatic redirecting of unauthorized logins.

User Accounts and Roles

Page 5: ASP

ASP.NET allows user accounts and roles, to give each user (with a given role) access to different server code and executables.

High Scalability

Much has been done with ASP.NET to provide greater scalability.

Server-to-server communication has been greatly enhanced, making it possible to scale an application over several servers. One example of this is the ability to run XML parsers, XSL transformations and even resource hungry session objects on other servers.

Compiled Code

The first request for an ASP.NET page on the server will compile the ASP.NET code and keep a cached copy in memory. The result of this is greatly increased performance.

Easy Configuration

Configuration of ASP.NET is done with plain text files.

Configuration files can be uploaded or changed while the application is running. No need to restart the server. No more metabase or registry puzzle.

Easy Deployment

No more server-restart to deploy or replace compiled code. ASP.NET simply redirects all new requests to the new code.

Compatibility

ASP.NET is not fully compatible with earlier versions of ASP, so most of the old ASP code will need some changes to run under ASP.NET.

To overcome this problem, ASP.NET uses a new file extension ".aspx". This will make ASP.NET applications able to run side by side with standard ASP applications on the same server.

« Previous Next Chapter »

ASP.NET Installing

« Previous Next Chapter »

ASP.NET is easy to install. Just follow the instructions below.

What You Need

If you have a Beta version of ASP.NET installed, we recommend that you completely uninstall it!

Or even better: start with a fresh Windows 2000 or XP installation!

Windows 2000 or XP

Page 6: ASP

If you are serious about developing ASP.NET applications you should install Windows 2000 Professional or Windows XP Professional.

In both cases, install the Internet Information Services (IIS) from the Add/Remove Windows components dialog.

Service Packs and Updates

Before ASP.NET can be installed on your computer, all relevant service packs and security updates must be installed.

The easiest way to do this is to activate your Windows Internet Update. When you access the Windows Update page, you will be instructed to install the latest service packs and all critical security updates. For Windows 2000, make sure you install Service Pack 2. You should also install the latest version of Internet Explorer.

Tip: Read the note about connection speed and download time at the bottom of this page.

Install .NET

From your Windows Update you can now select the Microsoft .NET Framework.

After download, the .NET framework will install itself on your computer - there are no options to select for installation.

You are now ready to develop your first ASP.NET application!

The .NET Software Development Kit

If you have the necessary bandwidth, you might consider downloading the full Microsoft .NET Software Development Kit (SDK).

We fully recommend getting the SDK for learning more about .NET, and for the documentation, samples, and tools included.

Connection Speed and Download Time

If you have a slow Internet connection, you might have problems downloading large files like the Windows 2000 Service Pack 2 and the Microsoft .NET Framework.

If download speed is a problem, our best suggestion is to get the latest files from someone else, from a colleague, from a friend, or from one of the CDs that comes with many popular computer magazines.

« Previous Next Chapter »

ASP.NET - Web Pages

« Previous Next Chapter »

A simple ASP.NET page looks just like an ordinary HTML page.

Hello W3Schools

To start learning ASP.NET, we will construct a very simple HTML page that will display "Hello W3Schools" in an Internet browser like this:

Hello W3Schools!

Page 7: ASP

Hello W3Schools in HTML

This code displays the example as an HTML page:

< html>< body bgcolor="yellow">< center>< h2>Hello W3Schools!</h2>< /center>< /body>< /html>

If you want to try it yourself, save the code in a file called "firstpage.htm", and create a link to the file like this: firstpage.htm

Hello W3Schools in ASP.NET

The simplest way to convert an HTML page into an ASP.NET page is to copy the HTML file to a new file with an .aspx extension.

This code displays our example as an ASP.NET page:

< html>< body bgcolor="yellow">< center>< h2>Hello W3Schools!</h2>< /center>< /body>< /html>

If you want to try it yourself, save the code in a file called "firstpage.aspx", and create a link to the file like this: firstpage.aspx

How Does it Work?

Fundamentally an ASP.NET page is just the same as an HTML page.

An HTML page has the extension .htm. If a browser requests an HTML page from the server, the server sends the page to the browser without any modifications.

An ASP.NET page has the extension .aspx. If a browser requests an ASP.NET page, the server processes any executable code in the page, before the result is sent back to the browser.

The ASP.NET page above does not contain any executable code, so nothing is executed. In the next examples we will add some executable code to the page to demonstrate the difference between static HTML pages and dynamic ASP pages.

Classic ASP

Active Server Pages (ASP) has been around for several years. With ASP, executable code can be placed inside HTML pages.

Previous versions of ASP (before ASP .NET) are often called Classic ASP.

ASP.NET is not fully compatible with Classic ASP, but most Classic ASP pages will work fine as ASP.NET pages, with only minor changes.

If you want to learn more about Classic ASP, please visit ourASP Tutorial.

Dynamic Page in Classic ASP

Page 8: ASP

To demonstrate how ASP can display pages with dynamic content, we have added some executable code (in red) to the previous example:

< html>< body bgcolor="yellow">< center>< h2>Hello W3Schools!</h2>< p><%Response.Write(now())%></p>< /center>< /body>< /html>

The code inside the <% --%> tags is executed on the server.

Response.Write is ASP code for writing something to the HTML output stream.

Now() is a function returning the servers current date and time.

If you want to try it yourself, save the code in a file called "dynpage.asp", and create a link to the file like this: dynpage.asp

Dynamic Page in ASP .NET

This following code displays our example as an ASP.NET page:

< html>< body bgcolor="yellow">< center>< h2>Hello W3Schools!</h2>< p><%Response.Write(now())%></p>< /center>< /body>< /html>

If you want to try it yourself, save the code in a file called "dynpage.aspx", and create a link to the file like this: dynpage.aspx

ASP.NET vs Classic ASP

The previous examples didn't demonstrate any differences between ASP.NET and Classic ASP.

As you can see from the two latest examples there are no differences between the two ASP and ASP.NET pages.

In the next chapters you will see how server controls make ASP.NET more powerful than Classic ASP.

« Previous Next Chapter »

ASP.NET - Server Controls

« Previous Next Chapter »

Server controls are tags that are understood by the server.

Limitations in Classic ASP

The listing below was copied from the previous chapter:

< html>< body bgcolor="yellow">< center>

Page 9: ASP

< h2>Hello W3Schools!</h2>< p><%Response.Write(now())%></p>< /center>< /body>< /html>

The code above illustrates a limitation in Classic ASP: The code block has to be placed where you want the output to appear.

With Classic ASP it is impossible to separate executable code from the HTML itself. This makes the page difficult to read, and difficult to maintain.

ASP.NET - Server Controls

ASP.NET has solved the "spaghetti-code" problem described above with server controls.

Server controls are tags that are understood by the server.

There are three kinds of server controls:

HTML Server Controls - Traditional HTML tags

Web Server Controls - New ASP.NET tags

Validation Server Controls - For input validation

ASP.NET - HTML Server Controls

HTML server controls are HTML tags understood by the server.

HTML elements in ASP.NET files are, by default, treated as text. To make these elements programmable, add a runat="server" attribute to the HTML element. This attribute indicates that the element should be treated as a server control. The id attribute is added to identify the server control. The id reference can be used to manipulate the server control at run time.

Note: All HTML server controls must be within a <form> tag with the runat="server" attribute. The runat="server" attribute indicates that the form should be processed on the server. It also indicates that the enclosed controls can be accessed by server scripts.

In the following example we declare an HtmlAnchor server control in an .aspx file. Then we manipulate the HRef attribute of the HtmlAnchor control in an event handler (an event handler is a subroutine that executes code for a given event). The Page_Load event is one of many events that ASP.NET understands:

< script runat="server">Sub Page_Loadlink1.HRef="http://www.w3schools.com"End Sub< /script>

< html>< body>

< form runat="server">< a id="link1" runat="server">Visit W3Schools!</a>< /form>

< /body>< /html>

The executable code itself has been moved outside the HTML.

ASP.NET - Web Server Controls

Web server controls are special ASP.NET tags understood by the server.

Like HTML server controls, Web server controls are also created on the server and they require a runat="server" attribute to work. However, Web server controls do not necessarily map to any existing HTML elements and they may represent more complex elements.

Page 10: ASP

The syntax for creating a Web server control is:

<asp:control_name id="some_id" runat="server" />

In the following example we declare a Button server control in an .aspx file. Then we create an event handler for the Click event which changes the text on the button:

< script runat="server">Sub submit(Source As Object, e As EventArgs)button1.Text="You clicked me!"End Sub< /script>

< html>< body>

< form runat="server">< asp:Button id="button1" Text="Click me!"runat="server" OnClick="submit"/>< /form>

< /body>< /html>

ASP.NET - Validation Server Controls

Validation server controls are used to validate user-input. If the user-input does not pass validation, it will display an error message to the user.

Each validation control performs a specific type of validation (like validating against a specific value or a range of values).

By default, page validation is performed when a Button, ImageButton, or LinkButton control is clicked. You can prevent validation when a button control is clicked by setting the CausesValidation property to false.

The syntax for creating a Validation server control is:

<asp:control_name id="some_id" runat="server" />

In the following example we declare one TextBox control, one Button control, and one RangeValidator control in an .aspx file. If validation fails, the text "The value must be from 1 to 100!" will be displayed in the RangeValidator control:

Example

< html>< body>

< form runat="server">< p>Enter a number from 1 to 100:< asp:TextBox id="tbox1" runat="server" />< br /><br />< asp:Button Text="Submit" runat="server" />< /p>

< p>< asp:RangeValidatorControlToValidate="tbox1"MinimumValue="1"MaximumValue="100"Type="Integer"Text="The value must be from 1 to 100!"runat="server" />< /p>< /form>

< /body>< /html>

Show example »

« Previous Next Chapter »

ASP.NET - Events

Page 11: ASP

« Previous Next Chapter »

An Event Handler is a subroutine that executes code for a given event.

ASP.NET - Event Handlers

Look at the following code:

< %lbl1.Text="The date and time is " & now()%>

< html>< body>< form runat="server">< h3><asp:label id="lbl1" runat="server" /></h3>< /form>< /body>< /html>

When will the code above be executed? The answer is: "You don't know..."

The Page_Load Event

The Page_Load event is one of many events that ASP.NET understands. The Page_Load event is triggered when a page loads, and ASP.NET will automatically call the subroutine Page_Load, and execute the code inside it:

Example

< script runat="server">Sub Page_Loadlbl1.Text="The date and time is " & now()End Sub< /script>

< html>< body>< form runat="server">< h3><asp:label id="lbl1" runat="server" /></h3>< /form>< /body>< /html>

Show example »

Note: The Page_Load event contains no object references or event arguments!

The Page.IsPostBack Property

The Page_Load subroutine runs EVERY time the page is loaded. If you want to execute the code in the Page_Load subroutine only the FIRST time the page is loaded, you can use the Page.IsPostBack property. If the Page.IsPostBack property is false, the page is loaded for the first time, if it is true, the page is posted back to the server (i.e. from a button click on a form):

Example

< script runat="server">Sub Page_Loadif Not Page.IsPostBack thenlbl1.Text="The date and time is " & now()end ifEnd Sub

Sub submit(s As Object, e As EventArgs)lbl2.Text="Hello World!"End Sub

Page 12: ASP

< /script>

< html>< body>< form runat="server">< h3><asp:label id="lbl1" runat="server" /></h3>< h3><asp:label id="lbl2" runat="server" /></h3>< asp:button text="Submit" onclick="submit" runat="server" />< /form>< /body>< /html>

Show example »

The example above will write the "The date and time is...." message only the first time the page is loaded. When a user clicks on the Submit button, the submit subroutine will write "Hello World!" to the second label, but the date and time in the first label will not change.

« Previous Next Chapter »

Page 13: ASP

ASP.NET Web Forms

« Previous Next Chapter »

All server controls must appear within a <form> tag, and the <form> tag must contain the runat="server" attribute.

ASP.NET Web Forms

All server controls must appear within a <form> tag, and the <form> tag must contain the runat="server" attribute. The runat="server" attribute indicates that the form should be processed on the server. It also indicates that the enclosed controls can be accessed by server scripts:

< form runat="server">

...HTML + server controls

< /form>

Note: The form is always submitted to the page itself. If you specify an action attribute, it is ignored. If you omit the method attribute, it will be set to method="post" by default. Also, if you do not specify the name and id attributes, they are automatically assigned by ASP.NET.

Note: An .aspx page can only contain ONE <form runat="server"> control!

If you select view source in an .aspx page containing a form with no name, method, action, or id attribute specified, you will see that ASP.NET has added these attributes to the form. It looks something like this:

< form name="_ctl0" method="post" action="page.aspx" id="_ctl0">

...some code

< /form>

Submitting a Form

A form is most often submitted by clicking on a button. The Button server control in ASP.NET has the following format:

<asp:Button id="id" text="label" OnClick="sub" runat="server" />

The id attribute defines a unique name for the button and the text attribute assigns a label to the button. The onClick event handler specifies a named subroutine to execute.

In the following example we declare a Button control in an .aspx file. A button click runs a subroutine which changes the text on the button:

Example

« Previous Next Chapter »

ASP .NET Maintaining the ViewState

« Previous Next Chapter »

You may save a lot of coding by maintaining the ViewState of the objects in your Web Form.

Maintaining the ViewState

When a form is submitted in classic ASP, all form values are cleared. Suppose you have submitted a form with a lot of information and the server comes back with an error. You will have to go back to the form and correct the information. You click the back button, and what happens.......ALL form values are CLEARED, and you will have to start all over again! The site did not maintain your ViewState.

Page 14: ASP

When a form is submitted in ASP .NET, the form reappears in the browser window together with all form values. How come? This is because ASP .NET maintains your ViewState. The ViewState indicates the status of the page when submitted to the server. The status is defined through a hidden field placed on each page with a <form runat="server"> control. The source could look something like this:

< form name="_ctl0" method="post" action="page.aspx" id="_ctl0">< input type="hidden" name="__VIEWSTATE"value="dDwtNTI0ODU5MDE1Ozs+ZBCF2ryjMpeVgUrY2eTj79HNl4Q=" />

.....some code

< /form>

Maintaining the ViewState is the default setting for ASP.NET Web Forms. If you want to NOT maintain the ViewState, include the directive <%@ Page EnableViewState="false" %> at the top of an .aspx page or add the attribute EnableViewState="false" to any control.

Look at the following .aspx file. It demonstrates the "old" way to do it. When you click on the submit button, the form value will disappear:

Example

< html>< body>

< form action="demo_classicasp.aspx" method="post">Your name: <input type="text" name="fname" size="20">< input type="submit" value="Submit">< /form>< %dim fnamefname=Request.Form("fname")If fname<>"" ThenResponse.Write("Hello " & fname & "!")End If%>

< /body>< /html>

Show example »

Here is the new ASP .NET way. When you click on the submit button, the form value will NOT disappear:

Example

Click view source in the right frame of the example to see that ASP .NET has added a hidden field in the form to maintain the ViewState

< script runat="server">Sub submit(sender As Object, e As EventArgs)lbl1.Text="Hello " & txt1.Text & "!"End Sub< /script>

< html>< body>

< form runat="server">Your name: <asp:TextBox id="txt1" runat="server" />< asp:Button OnClick="submit" Text="Submit" runat="server" />< p><asp:Label id="lbl1" runat="server" /></p>< /form>

< /body>< /html>

Show example »

« Previous Next Chapter »

ASP .NET - The TextBox Control

« Previous Next Chapter »

The TextBox control is used to create a text box where the user can input text.

Page 15: ASP

The TextBox Control

The TextBox control is used to create a text box where the user can input text.

The TextBox control's attributes and properties are listed in ourweb controls reference page.

The example below demonstrates some of the attributes you may use with the TextBox control:

Example

< html>< body>

< form runat="server">

A basic TextBox:< asp:TextBox id="tb1" runat="server" />< br /><br />

A password TextBox:< asp:TextBox id="tb2" TextMode="password" runat="server" />< br /><br />

A TextBox with text:< asp:TextBox id="tb4" Text="Hello World!" runat="server" />< br /><br />

A multiline TextBox:< asp:TextBox id="tb3" TextMode="multiline" runat="server" />< br /><br />

A TextBox with height:< asp:TextBox id="tb6" rows="5" TextMode="multiline"runat="server" />< br /><br />

A TextBox with width:< asp:TextBox id="tb5" columns="30" runat="server" />

< /form>

< /body>< /html>

Show example »

Add a Script

The contents and settings of a TextBox control may be changed by server scripts when a form is submitted. A form can be submitted by clicking on a button or when a user changes the value in the TextBox control.

In the following example we declare one TextBox control, one Button control, and one Label control in an .aspx file. When the submit button is triggered, the submit subroutine is executed. The submit subroutine writes a text to the Label control:

Example

< script runat="server">Sub submit(sender As Object, e As EventArgs)lbl1.Text="Your name is " & txt1.TextEnd Sub< /script>

< html>< body>

< form runat="server">Enter your name:< asp:TextBox id="txt1" runat="server" />< asp:Button OnClick="submit" Text="Submit" runat="server" />< p><asp:Label id="lbl1" runat="server" /></p>< /form>

< /body>< /html>

Show example »

Page 16: ASP

In the following example we declare one TextBox control and one Label control in an .aspx file. When you change the value in the TextBox and either click outside the TextBox or press the Tab key, the change subroutine is executed. The submit subroutine writes a text to the Label control:

Example

< script runat="server">Sub change(sender As Object, e As EventArgs)lbl1.Text="You changed text to " & txt1.TextEnd Sub< /script>

< html>< body>

< form runat="server">Enter your name:< asp:TextBox id="txt1" runat="server"text="Hello World!"ontextchanged="change" autopostback="true"/>< p><asp:Label id="lbl1" runat="server" /></p>< /form>

< /body>< /html>

Show example »

« Previous Next Chapter »

ASP.NET - The Button Control

« Previous Next Chapter »

The Button control is used to display a push button.

The Button Control

The Button control is used to display a push button. The push button may be a submit button or a command button. By default, this control is a submit button.

A submit button does not have a command name and it posts the page back to the server when it is clicked. It is possible to write an event handler to control the actions performed when the submit button is clicked.

A command button has a command name and allows you to create multiple Button controls on a page. It is possible to write an event handler to control the actions performed when the command button is clicked.

The Button control's attributes and properties are listed in ourweb controls reference page.

The example below demonstrates a simple Button control:

< html>< body>

< form runat="server">< asp:Button id="b1" Text="Submit" runat="server" />< /form>

< /body>< /html>

Add a Script

A form is most often submitted by clicking on a button.

In the following example we declare one TextBox control, one Button control, and one Label control in an .aspx file. When the submit button is triggered, the submit subroutine is executed. The submit subroutine writes a text to the Label control:

Page 17: ASP

Example

< script runat="server">Sub submit(sender As Object, e As EventArgs)lbl1.Text="Your name is " & txt1.TextEnd Sub< /script>

< html>< body>

< form runat="server">Enter your name:< asp:TextBox id="txt1" runat="server" />< asp:Button OnClick="submit" Text="Submit" runat="server" />< p><asp:Label id="lbl1" runat="server" /></p>< /form>

< /body>< /html>

Show example »

« Previous Next Chapter »

Page 18: ASP

ASP.NET - Data Binding

« Previous Next Chapter »

We may use data binding to fill lists with selectable items from an imported data source, like a database, an XML file, or a script.

Data Binding

The following controls are list controls which support data binding:

asp:RadioButtonList

asp:CheckBoxList

asp:DropDownList

asp:Listbox

The selectable items in each of the above controls are usually defined by one or more asp:ListItem controls, like this:

< html>< body>

< form runat="server">< asp:RadioButtonList id="countrylist" runat="server">< asp:ListItem value="N" text="Norway" />< asp:ListItem value="S" text="Sweden" />< asp:ListItem value="F" text="France" />< asp:ListItem value="I" text="Italy" />< /asp:RadioButtonList>< /form>

< /body>< /html>

However, with data binding we may use a separate source, like a database, an XML file, or a script to fill the list with selectable items.

By using an imported source, the data is separated from the HTML, and any changes to the items are made in the separate data source.

In the next three chapters, we will describe how to bind data from a scripted data source.

« Previous Next Chapter »

ASP.NET - The ArrayList Object

« Previous Next Chapter »

The ArrayList object is a collection of items containing a single data value.

Try it Yourself - Examples

ArrayList DropDownList

ArrayList RadioButtonList

Create an ArrayList

Page 19: ASP

The ArrayList object is a collection of items containing a single data value.

Items are added to the ArrayList with the Add() method.

The following code creates a new ArrayList object named mycountries and four items are added:

< script runat="server">Sub Page_Loadif Not Page.IsPostBack thendim mycountries=New ArrayListmycountries.Add("Norway")mycountries.Add("Sweden")mycountries.Add("France")mycountries.Add("Italy")end ifend sub< /script>

By default, an ArrayList object contains 16 entries. An ArrayList can be sized to its final size with the TrimToSize() method:

< script runat="server">Sub Page_Loadif Not Page.IsPostBack thendim mycountries=New ArrayListmycountries.Add("Norway")mycountries.Add("Sweden")mycountries.Add("France")mycountries.Add("Italy")mycountries.TrimToSize()end ifend sub< /script>

An ArrayList can also be sorted alphabetically or numerically with the Sort() method:

< script runat="server">Sub Page_Loadif Not Page.IsPostBack thendim mycountries=New ArrayListmycountries.Add("Norway")mycountries.Add("Sweden")mycountries.Add("France")mycountries.Add("Italy")mycountries.TrimToSize()mycountries.Sort()end ifend sub< /script>

To sort in reverse order, apply the Reverse() method after the Sort() method:

< script runat="server">Sub Page_Loadif Not Page.IsPostBack thendim mycountries=New ArrayListmycountries.Add("Norway")mycountries.Add("Sweden")mycountries.Add("France")mycountries.Add("Italy")mycountries.TrimToSize()mycountries.Sort()mycountries.Reverse()end ifend sub< /script>

Data Binding to an ArrayList

An ArrayList object may automatically generate the text and values to the following controls:

asp:RadioButtonList

asp:CheckBoxList

asp:DropDownList

Page 20: ASP

asp:Listbox

To bind data to a RadioButtonList control, first create a RadioButtonList control (without any asp:ListItem elements) in an .aspx page:

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server" />< /form>

< /body>< /html>

Then add the script that builds the list and binds the values in the list to the RadioButtonList control:

Example

< script runat="server">Sub Page_Loadif Not Page.IsPostBack thendim mycountries=New ArrayListmycountries.Add("Norway")mycountries.Add("Sweden")mycountries.Add("France")mycountries.Add("Italy")mycountries.TrimToSize()mycountries.Sort()rb.DataSource=mycountriesrb.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server" />< /form>

< /body>< /html>

Show example »

The DataSource property of the RadioButtonList control is set to the ArrayList and it defines the data source of the RadioButtonList control. The DataBind() method of the RadioButtonList control binds the data source with the RadioButtonList control.

Note: The data values are used as both the Text and Value properties for the control. To add Values that are different from the Text, use either the Hashtable object or the SortedList object.

« Previous Next Chapter »

ASP.NET - The Hashtable Object

« Previous Next Chapter »

The Hashtable object contains items in key/value pairs.

Try it Yourself - Examples

Hashtable RadiobuttonList 1

Hashtable RadiobuttonList 2

Page 21: ASP

Hashtable DropDownList

Create a Hashtable

The Hashtable object contains items in key/value pairs. The keys are used as indexes, and very quick searches can be made for values by searching through their keys.

Items are added to the Hashtable with the Add() method.

The following code creates a Hashtable named mycountries and four elements are added:

< script runat="server">Sub Page_Loadif Not Page.IsPostBack thendim mycountries=New Hashtablemycountries.Add("N","Norway")mycountries.Add("S","Sweden")mycountries.Add("F","France")mycountries.Add("I","Italy")end ifend sub< /script>

Data Binding

A Hashtable object may automatically generate the text and values to the following controls:

asp:RadioButtonList

asp:CheckBoxList

asp:DropDownList

asp:Listbox

To bind data to a RadioButtonList control, first create a RadioButtonList control (without any asp:ListItem elements) in an .aspx page:

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" />< /form>

< /body>< /html>

Then add the script that builds the list:

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New Hashtablemycountries.Add("N","Norway")mycountries.Add("S","Sweden")mycountries.Add("F","France")mycountries.Add("I","Italy")rb.DataSource=mycountriesrb.DataValueField="Key"rb.DataTextField="Value"rb.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" />< /form>

< /body>< /html>

Page 22: ASP

Then we add a sub routine to be executed when the user clicks on an item in the RadioButtonList control. When a radio button is clicked, a text will appear in a label:

Example

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New Hashtablemycountries.Add("N","Norway")mycountries.Add("S","Sweden")mycountries.Add("F","France")mycountries.Add("I","Italy")rb.DataSource=mycountriesrb.DataValueField="Key"rb.DataTextField="Value"rb.DataBind()end ifend sub

sub displayMessage(s as Object,e As EventArgs)lbl1.text="Your favorite country is: " & rb.SelectedItem.Textend sub< /script>

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server"AutoPostBack="True" onSelectedIndexChanged="displayMessage" />< p><asp:label id="lbl1" runat="server" /></p>< /form>

< /body>< /html>

Show example »

Note: You cannot choose the sort order of the items added to the Hashtable. To sort items alphabetically or numerically, use the SortedList object.

« Previous Next Chapter »

ASP.NET - The SortedList Object

« Previous Next Chapter »

The SortedList object combines the features of both the ArrayList object and the Hashtable object.

Try it Yourself - Examples

SortedList RadiobuttonList 1

SortedList RadiobuttonList 2

SortedList DropDownList

The SortedList Object

The SortedList object contains items in key/value pairs. A SortedList object automatically sort the items in alphabetic or numeric order.

Items are added to the SortedList with the Add() method. A SortedList can be sized to its final size with the TrimToSize() method.

Page 23: ASP

The following code creates a SortedList named mycountries and four elements are added:

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New SortedListmycountries.Add("N","Norway")mycountries.Add("S","Sweden")mycountries.Add("F","France")mycountries.Add("I","Italy")end ifend sub< /script>

Data Binding

A SortedList object may automatically generate the text and values to the following controls:

asp:RadioButtonList

asp:CheckBoxList

asp:DropDownList

asp:Listbox

To bind data to a RadioButtonList control, first create a RadioButtonList control (without any asp:ListItem elements) in an .aspx page:

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" />< /form>

< /body>< /html>

Then add the script that builds the list:

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New SortedListmycountries.Add("N","Norway")mycountries.Add("S","Sweden")mycountries.Add("F","France")mycountries.Add("I","Italy")rb.DataSource=mycountriesrb.DataValueField="Key"rb.DataTextField="Value"rb.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" />< /form>

< /body>< /html>

Then we add a sub routine to be executed when the user clicks on an item in the RadioButtonList control. When a radio button is clicked, a text will appear in a label:

Example

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New SortedListmycountries.Add("N","Norway")mycountries.Add("S","Sweden")

Page 24: ASP

mycountries.Add("F","France")mycountries.Add("I","Italy")rb.DataSource=mycountriesrb.DataValueField="Key"rb.DataTextField="Value"rb.DataBind()end ifend sub

sub displayMessage(s as Object,e As EventArgs)lbl1.text="Your favorite country is: " & rb.SelectedItem.Textend sub< /script>

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server"AutoPostBack="True" onSelectedIndexChanged="displayMessage" />< p><asp:label id="lbl1" runat="server" /></p>< /form>

< /body>< /html>

Show example »

« Previous Next Chapter »

ASP .NET - XML Files

« Previous Next Chapter »

We can bind an XML file to a list control.

An XML File

Here is an XML file named "countries.xml":

< ?xml version="1.0" encoding="ISO-8859-1"?>

< countries>

< country>< text>Norway</text>< value>N</value>< /country>

< country>< text>Sweden</text>< value>S</value>< /country>

< country>< text>France</text>< value>F</value>< /country>

< country>< text>Italy</text>< value>I</value>< /country>

< /countries>

Take a look at the XML file: countries.xml

Bind a DataSet to a List Control

Page 25: ASP

First, import the "System.Data" namespace. We need this namespace to work with DataSet objects. Include the following directive at the top of an .aspx page:

<%@ Import Namespace="System.Data" %>

Next, create a DataSet for the XML file and load the XML file into the DataSet when the page is first loaded:

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New DataSetmycountries.ReadXml(MapPath("countries.xml"))end ifend sub

To bind the DataSet to a RadioButtonList control, first create a RadioButtonList control (without any asp:ListItem elements) in an .aspx page:

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" />< /form>

< /body>< /html>

Then add the script that builds the XML DataSet:

< %@ Import Namespace="System.Data" %>

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New DataSetmycountries.ReadXml(MapPath("countries.xml"))rb.DataSource=mycountriesrb.DataValueField="value"rb.DataTextField="text"rb.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server"AutoPostBack="True" onSelectedIndexChanged="displayMessage" />< /form>

< /body>< /html>

Then we add a sub routine to be executed when the user clicks on an item in the RadioButtonList control. When a radio button is clicked, a text will appear in a label:

Example

< %@ Import Namespace="System.Data" %>

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New DataSetmycountries.ReadXml(MapPath("countries.xml"))rb.DataSource=mycountriesrb.DataValueField="value"rb.DataTextField="text"rb.DataBind()end ifend sub

sub displayMessage(s as Object,e As EventArgs)lbl1.text="Your favorite country is: " & rb.SelectedItem.Textend sub< /script>

Page 26: ASP

< html>< body>

< form runat="server">< asp:RadioButtonList id="rb" runat="server"AutoPostBack="True" onSelectedIndexChanged="displayMessage" />< p><asp:label id="lbl1" runat="server" /></p>< /form>

< /body>< /html>

Show example »

« Previous Next Chapter »

ASP.NET - The Repeater Control

« Previous Next Chapter »

The Repeater control is used to display a repeated list of items that are bound to the control.

Bind a DataSet to a Repeater Control

The Repeater control is used to display a repeated list of items that are bound to the control. The Repeater control may be bound to a database table, an XML file, or another list of items. Here we will show how to bind an XML file to a Repeater control.

We will use the following XML file in our examples ("cdcatalog.xml"):

< ?xml version="1.0" encoding="ISO-8859-1"?>

< catalog>< cd>< title>Empire Burlesque</title>< artist>Bob Dylan</artist>< country>USA</country>< company>Columbia</company>< price>10.90</price>< year>1985</year>< /cd>< cd>< title>Hide your heart</title>< artist>Bonnie Tyler</artist>< country>UK</country>< company>CBS Records</company>< price>9.90</price>< year>1988</year>< /cd>< cd>< title>Greatest Hits</title>< artist>Dolly Parton</artist>< country>USA</country>< company>RCA</company>< price>9.90</price>< year>1982</year>< /cd>< cd>< title>Still got the blues</title>< artist>Gary Moore</artist>< country>UK</country>< company>Virgin records</company>< price>10.20</price>< year>1990</year>< /cd>< cd>< title>Eros</title>< artist>Eros Ramazzotti</artist>< country>EU</country>< company>BMG</company>< price>9.90</price>< year>1997</year>< /cd>< /catalog>

Page 27: ASP

Take a look at the XML file: cdcatalog.xml

First, import the "System.Data" namespace. We need this namespace to work with DataSet objects. Include the following directive at the top of an .aspx page:

<%@ Import Namespace="System.Data" %>

Next, create a DataSet for the XML file and load the XML file into the DataSet when the page is first loaded:

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycdcatalog=New DataSetmycdcatalog.ReadXml(MapPath("cdcatalog.xml"))end ifend sub

Then we create a Repeater control in an .aspx page. The contents of the <HeaderTemplate> element are rendered first and only once within the output, then the contents of the <ItemTemplate> element are repeated for each "record" in the DataSet, and last, the contents of the <FooterTemplate> element are rendered once within the output:

< html>< body>

< form runat="server">< asp:Repeater id="cdcatalog" runat="server">

< HeaderTemplate>...< /HeaderTemplate>

< ItemTemplate>...< /ItemTemplate>

< FooterTemplate>...< /FooterTemplate>

< /asp:Repeater>< /form>

< /body>< /html>

Then we add the script that creates the DataSet and binds the mycdcatalog DataSet to the Repeater control. We also fill the Repeater control with HTML tags and bind the data items to the cells in the<ItemTemplate> section with the < %#Container.DataItem("fieldname")%> method:

Example

< %@ Import Namespace="System.Data" %>

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycdcatalog=New DataSetmycdcatalog.ReadXml(MapPath("cdcatalog.xml"))cdcatalog.DataSource=mycdcatalogcdcatalog.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:Repeater id="cdcatalog" runat="server">

< HeaderTemplate>< table border="1" width="100%">< tr>< th>Title</th>< th>Artist</th>< th>Country</th>< th>Company</th>< th>Price</th>< th>Year</th>< /tr>< /HeaderTemplate>

Page 28: ASP

< ItemTemplate>< tr>< td><%#Container.DataItem("title")%></td>< td><%#Container.DataItem("artist")%></td>< td><%#Container.DataItem("country")%></td>< td><%#Container.DataItem("company")%></td>< td><%#Container.DataItem("price")%></td>< td><%#Container.DataItem("year")%></td>< /tr>< /ItemTemplate>

< FooterTemplate>< /table>< /FooterTemplate>

< /asp:Repeater>< /form>

< /body>< /html>

Show example »

Using the <AlternatingItemTemplate>

You can add an <AlternatingItemTemplate> element after the <ItemTemplate> element to describe the appearance of alternating rows of output. In the following example each other row in the table will be displayed in a light grey color:

Example

< %@ Import Namespace="System.Data" %>

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycdcatalog=New DataSetmycdcatalog.ReadXml(MapPath("cdcatalog.xml"))cdcatalog.DataSource=mycdcatalogcdcatalog.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:Repeater id="cdcatalog" runat="server">

< HeaderTemplate>< table border="1" width="100%">< tr>< th>Title</th>< th>Artist</th>< th>Country</th>< th>Company</th>< th>Price</th>< th>Year</th>< /tr>< /HeaderTemplate>

< ItemTemplate>< tr>< td><%#Container.DataItem("title")%></td>< td><%#Container.DataItem("artist")%></td>< td><%#Container.DataItem("country")%></td>< td><%#Container.DataItem("company")%></td>< td><%#Container.DataItem("price")%></td>< td><%#Container.DataItem("year")%></td>< /tr>< /ItemTemplate>

< AlternatingItemTemplate>< tr bgcolor="#e8e8e8">< td><%#Container.DataItem("title")%></td>< td><%#Container.DataItem("artist")%></td>< td><%#Container.DataItem("country")%></td>< td><%#Container.DataItem("company")%></td>< td><%#Container.DataItem("price")%></td>< td><%#Container.DataItem("year")%></td>< /tr>< /AlternatingItemTemplate>

Page 29: ASP

< FooterTemplate>< /table>< /FooterTemplate>

< /asp:Repeater>< /form>

< /body>< /html>

Show example »

Using the <SeparatorTemplate>

The <SeparatorTemplate> element can be used to describe a separator between each record. The following example inserts a horizontal line between each table row:

Example

< %@ Import Namespace="System.Data" %>

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycdcatalog=New DataSetmycdcatalog.ReadXml(MapPath("cdcatalog.xml"))cdcatalog.DataSource=mycdcatalogcdcatalog.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:Repeater id="cdcatalog" runat="server">

< HeaderTemplate>< table border="0" width="100%">< tr>< th>Title</th>< th>Artist</th>< th>Country</th>< th>Company</th>< th>Price</th>< th>Year</th>< /tr>< /HeaderTemplate>

< ItemTemplate>< tr>< td><%#Container.DataItem("title")%></td>< td><%#Container.DataItem("artist")%></td>< td><%#Container.DataItem("country")%></td>< td><%#Container.DataItem("company")%></td>< td><%#Container.DataItem("price")%></td>< td><%#Container.DataItem("year")%></td>< /tr>< /ItemTemplate>

< SeparatorTemplate>< tr>< td colspan="6"><hr /></td>< /tr>< /SeparatorTemplate>

< FooterTemplate>< /table>< /FooterTemplate>

< /asp:Repeater>< /form>

< /body>< /html>

Show example »

« Previous Next Chapter »

Page 30: ASP

ASP.NET - The DataList Control

« Previous Next Chapter »

The DataList control is, like the Repeater control, used to display a repeated list of items that are bound to the control. However, the DataList control adds a table around the data items by default.

Bind a DataSet to a DataList Control

The DataList control is, like the Repeater control, used to display a repeated list of items that are bound to the control. However, the DataList control adds a table around the data items by default. The DataList control may be bound to a database table, an XML file, or another list of items. Here we will show how to bind an XML file to a DataList control.

We will use the following XML file in our examples ("cdcatalog.xml"):

< ?xml version="1.0" encoding="ISO-8859-1"?>

< catalog>< cd>< title>Empire Burlesque</title>< artist>Bob Dylan</artist>< country>USA</country>< company>Columbia</company>< price>10.90</price>< year>1985</year>< /cd>< cd>< title>Hide your heart</title>< artist>Bonnie Tyler</artist>< country>UK</country>< company>CBS Records</company>< price>9.90</price>< year>1988</year>< /cd>< cd>< title>Greatest Hits</title>< artist>Dolly Parton</artist>< country>USA</country>< company>RCA</company>< price>9.90</price>< year>1982</year>< /cd>< cd>< title>Still got the blues</title>< artist>Gary Moore</artist>< country>UK</country>< company>Virgin records</company>< price>10.20</price>< year>1990</year>< /cd>< cd>< title>Eros</title>< artist>Eros Ramazzotti</artist>< country>EU</country>< company>BMG</company>< price>9.90</price>< year>1997</year>< /cd>< /catalog>

Take a look at the XML file: cdcatalog.xml

First, import the "System.Data" namespace. We need this namespace to work with DataSet objects. Include the following directive at the top of an .aspx page:

<%@ Import Namespace="System.Data" %>

Next, create a DataSet for the XML file and load the XML file into the DataSet when the page is first loaded:

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycdcatalog=New DataSetmycdcatalog.ReadXml(MapPath("cdcatalog.xml"))

Page 31: ASP

end ifend sub

Then we create a DataList in an .aspx page. The contents of the <HeaderTemplate> element are rendered first and only once within the output, then the contents of the <ItemTemplate> element are repeated for each "record" in the DataSet, and last, the contents of the <FooterTemplate> element are rendered once within the output:

< html>< body>

< form runat="server">< asp:DataList id="cdcatalog" runat="server">

< HeaderTemplate>...< /HeaderTemplate>

< ItemTemplate>...< /ItemTemplate>

< FooterTemplate>...< /FooterTemplate>

< /asp:DataList>< /form>

< /body>< /html>

Then we add the script that creates the DataSet and binds the mycdcatalog DataSet to the DataList control. We also fill the DataList control with a <HeaderTemplate> that contains the header of the table, an <ItemTemplate> that contains the data items to display, and a <FooterTemplate> that contains a text. Note that the gridlines attribute of the DataList is set to "both" to display table borders:

Example

< %@ Import Namespace="System.Data" %>

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycdcatalog=New DataSetmycdcatalog.ReadXml(MapPath("cdcatalog.xml"))cdcatalog.DataSource=mycdcatalogcdcatalog.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:DataList id="cdcatalog"gridlines="both" runat="server">

< HeaderTemplate>My CD Catalog< /HeaderTemplate>

< ItemTemplate>"<%#Container.DataItem("title")%>" of< %#Container.DataItem("artist")%> -$<%#Container.DataItem("price")%>< /ItemTemplate>

< FooterTemplate>Copyright Hege Refsnes< /FooterTemplate>

< /asp:DataList>< /form>

< /body>< /html>

Show example »

Using Styles

You can also add styles to the DataList control to make the output more fancy:

Page 32: ASP

Example

< %@ Import Namespace="System.Data" %>

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycdcatalog=New DataSetmycdcatalog.ReadXml(MapPath("cdcatalog.xml"))cdcatalog.DataSource=mycdcatalogcdcatalog.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:DataList id="cdcatalog"runat="server"cellpadding="2"cellspacing="2"borderstyle="inset"backcolor="#e8e8e8"width="100%"headerstyle-font-name="Verdana"headerstyle-font-size="12pt"headerstyle-horizontalalign="center"headerstyle-font-bold="true"itemstyle-backcolor="#778899"itemstyle-forecolor="#ffffff"footerstyle-font-size="9pt"footerstyle-font-italic="true">

< HeaderTemplate>My CD Catalog< /HeaderTemplate>

< ItemTemplate>"<%#Container.DataItem("title")%>" of< %#Container.DataItem("artist")%> -$<%#Container.DataItem("price")%>< /ItemTemplate>

< FooterTemplate>Copyright Hege Refsnes< /FooterTemplate>

< /asp:DataList>< /form>

< /body>< /html>

Show example »

Using the <AlternatingItemTemplate>

You can add an <AlternatingItemTemplate> element after the <ItemTemplate> element to describe the appearance of alternating rows of output. You may style the data in the <AlternatingItemTemplate> section within the DataList control:

Example

< %@ Import Namespace="System.Data" %>

< script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycdcatalog=New DataSetmycdcatalog.ReadXml(MapPath("cdcatalog.xml"))cdcatalog.DataSource=mycdcatalogcdcatalog.DataBind()end ifend sub< /script>

< html>< body>

< form runat="server">< asp:DataList id="cdcatalog"runat="server"cellpadding="2"

Page 33: ASP

cellspacing="2"borderstyle="inset"backcolor="#e8e8e8"width="100%"headerstyle-font-name="Verdana"headerstyle-font-size="12pt"headerstyle-horizontalalign="center"headerstyle-font-bold="True"itemstyle-backcolor="#778899"itemstyle-forecolor="#ffffff"alternatingitemstyle-backcolor="#e8e8e8"alternatingitemstyle-forecolor="#000000"footerstyle-font-size="9pt"footerstyle-font-italic="True">

< HeaderTemplate>My CD Catalog< /HeaderTemplate>

< ItemTemplate>"<%#Container.DataItem("title")%>" of< %#Container.DataItem("artist")%> -$<%#Container.DataItem("price")%>< /ItemTemplate>

< AlternatingItemTemplate>"<%#Container.DataItem("title")%>" of< %#Container.DataItem("artist")%> -$<%#Container.DataItem("price")%>< /AlternatingItemTemplate>

< FooterTemplate>& copy; Hege Refsnes< /FooterTemplate>

< /asp:DataList>< /form>

< /body>< /html>

Show example »

« Previous Next Chapter »

Page 34: ASP

ASP.NET - Database Connection

« Previous Next Chapter »

ADO.NET is also a part of the .NET Framework. ADO.NET is used to handle data access. With ADO.NET you can work with databases.

Try it Yourself - Examples

Database connection - Bind to a DataList control

Database connection - Bind to a Repeater control

What is ADO.NET?

ADO.NET is a part of the .NET Framework

ADO.NET consists of a set of classes used to handle data access

ADO.NET is entirely based on XML

ADO.NET has, unlike ADO, no Recordset object

Create a Database Connection

We are going to use the Northwind database in our examples.

First, import the "System.Data.OleDb" namespace. We need this namespace to work with Microsoft Access and other OLE DB database providers. We will create the connection to the database in the Page_Load subroutine. We create a dbconn variable as a new OleDbConnection class with a connection string which identifies the OLE DB provider and the location of the database. Then we open the database connection:

< %@ Import Namespace="System.Data.OleDb" %>

< script runat="server">sub Page_Loaddim dbconndbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("northwind.mdb"))dbconn.Open()end sub< /script>

Note: The connection string must be a continuous string without a line break!

Create a Database Command

To specify the records to retrieve from the database, we will create a dbcomm variable as a new OleDbCommand class. The OleDbCommand class is for issuing SQL queries against database tables:

< %@ Import Namespace="System.Data.OleDb" %>

< script runat="server">sub Page_Loaddim dbconn,sql,dbcommdbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECT * FROM customers"dbcomm=New OleDbCommand(sql,dbconn)end sub

Page 35: ASP

< /script>

Create a DataReader

The OleDbDataReader class is used to read a stream of records from a data source. A DataReader is created by calling the ExecuteReader method of the OleDbCommand object:

< %@ Import Namespace="System.Data.OleDb" %>

< script runat="server">sub Page_Loaddim dbconn,sql,dbcomm,dbreaddbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECT * FROM customers"dbcomm=New OleDbCommand(sql,dbconn)dbread=dbcomm.ExecuteReader()end sub< /script>

Bind to a Repeater Control

Then we bind the DataReader to a Repeater control:

Example

< %@ Import Namespace="System.Data.OleDb" %>

< script runat="server">sub Page_Loaddim dbconn,sql,dbcomm,dbreaddbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECT * FROM customers"dbcomm=New OleDbCommand(sql,dbconn)dbread=dbcomm.ExecuteReader()customers.DataSource=dbreadcustomers.DataBind()dbread.Close()dbconn.Close()end sub< /script>

< html>< body>

< form runat="server">< asp:Repeater id="customers" runat="server">

< HeaderTemplate>< table border="1" width="100%">< tr>< th>Companyname</th>< th>Contactname</th>< th>Address</th>< th>City</th>< /tr>< /HeaderTemplate>

< ItemTemplate>< tr>< td><%#Container.DataItem("companyname")%></td>< td><%#Container.DataItem("contactname")%></td>< td><%#Container.DataItem("address")%></td>< td><%#Container.DataItem("city")%></td>< /tr>< /ItemTemplate>

< FooterTemplate>< /table>< /FooterTemplate>

< /asp:Repeater>< /form>

< /body>

Page 36: ASP

< /html>

Show example »

Close the Database Connection

Always close both the DataReader and database connection after access to the database is no longer required:

dbread.Close()dbconn.Close()

« Previous Next Chapter »

Page 37: ASP

ASP.NET 2.0 - New Features

« Previous Next Chapter »

ASP.NET 2.0 improves ASP.NET by adding several new features.

Improvements in ASP.NET 2.0

ASP.NET 2.0 was designed to make web development easier and quicker.

Design goals for ASP.NET 2.0:

Increase productivity by removing 70% of the code

Use the same controls for all types of devices

Provide a faster and better web server platform

Simplify compilation and installation

Simplify the administration of web applications

What's New in ASP.NET 2.0?

Some of the new features in ASP.NET 2.0 are:

Master Pages, Themes, and Web Parts

Standard controls for navigation

Standard controls for security

Roles, personalization, and internationalization services

Improved and simplified data access controls

Full support for XML standards like, XHTML, XML, and WSDL

Improved compilation and deployment (installation)

Improved site management

New and improved development tools

The new features are described below.

Master Pages

ASP.NET didn't have a method for applying a consistent look and feel for a whole web site.

Master pages in ASP.NET 2.0 solves this problem.

A master page is a template for other pages, with shared layout and functionality. The master page defines placeholders for content pages. The result page is a combination (merge) of the master page and the content page.

Read more about master pages.

Themes

Themes is another feature of ASP.NET 2.0. Themes, or skins, allow developers to create a customized look for web applications.

Design goals for ASP.NET 2.0 themes:

Page 38: ASP

Make it simple to customize the appearance of a site

Allow themes to be applied to controls, pages, and entire sites

Allow all visual elements to be customized

Web Parts

ASP.NET 2.0 Web Parts can provide a consistent look for a site, while still allowing user customization of style and content.

New controls:

Zone controls - areas on a page where the content is consistent

Web part controls - content areas for each zone

Navigation

ASP.NET 2.0 has built-in navigation controls like

Site Maps

Dynamic HTML menus

Tree Views

Security

Security is very important for protecting confidential and personal information.

In ASP.NET 2.0 the following controls has been added:

A Login control, which provides login functionality

A LoginStatus control, to control the login status

A LoginName control to display the current user name

A LoginView control, to provide different views depending on login status

A CreateUser wizard, to allow creation of user accounts

A PasswordRecovery control, to provide the "I forgot my password" functionality

Roles and Personalization

Internet communities are growing very popular.

ASP.NET 2.0 has personalization features for storing user details. This provides an easy way to customize user (and user group) properties.

Internationalization

Reaching people with different languages is important if you want to reach a larger audience.

ASP.NET 2.0 has improved support for multiple languages.

Data Access

Page 39: ASP

Many web sites are data driven, using databases or XML files as data sources.

With ASP.NET this involved code, and often the same code had to be used over and over in different web pages.

A key goal of ASP.NET 2.0 was to ease the use of data sources.

ASP.NET 2.0 has new data controls, removing much of the need for programming and in-depth knowledge of data connections.

Mobility Support

The problem with Mobile devices is screen size and display capabilities.

In ASP.NET, the Microsoft Mobile Internet Toolkit (MMIT) provided this support.

In ASP.NET 2.0, MMIT is no longer needed because mobile support is built into all controls.

Images

ASP.NET 2.0 has new controls for handling images:

The ImageMap control - image map support

The DynamicImage control - image support for different browsers

These controls are important for better image display on mobile devices, like hand-held computers and cell phones.

Automatic Compilation

ASP.NET 2.0 provides automatic compilation. All files within a directory will be compiled on the first run, including support for WSDL, and XSD files.

Compiled Deployment (Installation) and Source Protection

ASP.NET 2.0 also provides pre-compilation. An entire web site can be pre-compiled. This provides an easy way to deploy (upload to a server) compiled applications, and because only compiled files are deployed, the source code is protected.

Site Management

ASP.NET 2.0 has three new features for web site configuration and management:

New local management console

New programmable management functions (API)

New web-based management tool

Development Tools

With ASP.NET Visual Studio.NET was released with project and design features targeted at corporate developers.

With ASP.NET 2.0, Visual Studio 2005 was released.

Page 40: ASP

Key design features for Visual Studio 2005 include:

Support for the features described above

Upload files from anywhere (FTP, File System, Front Page....)

No project files, allowing code to be manipulated outside Visual Studio

Integrated Web Site Administration Tool

No "build" step - ability to compile on first run

Visual Web Developer is a new free ASP.NET 2.0 tool for non-corporate developers who don't have access to Visual Studio.NET.

« Previous Next Chapter »

ASP.NET 2.0 - Master Pages

« Previous Next Chapter »

Master pages provide templates for other pages on your web site.

Master Pages

Master pages allow you to create a consistent look and behavior for all the pages (or group of pages) in your web application.

A master page provides a template for other pages, with shared layout and functionality. The master page defines placeholders for the content, which can be overridden by content pages. The output result is a combination of the master page and the content page.

The content pages contains the content you want to display.

When users request the content page, ASP.NET merges the pages to produce output that combines the layout of the master page with the content of the content page.

Master Page Example

< %@ Master %>

< html>< body>< h1>Standard Header For All Pages</h1><asp:ContentPlaceHolder id="CPH1" runat="server">< /asp:ContentPlaceHolder></body>< /html>

The master page above is a normal HTML page designed as a template for other pages.

The @ Master directive defines it as a master page.

The master page contains a placeholder tag <asp:ContentPlaceHolder> for individual content.

The id="CPH1" attribute identifies the placeholder, allowing many placeholders in the same master page.

This master page was saved with the name "master1.master".

Note: The master page can also contain code, allowing dynamic content.

Page 41: ASP

Content Page Example

< %@ Page MasterPageFile="master1.master" %>

< asp:Content ContentPlaceHolderId="CPH1" runat="server">< h2>Individual Content</h2>< p>Paragraph 1</p>< p>Paragraph 2</p>< /asp:Content>

The content page above is one of the individual content pages of the web.

The @ Page directive defines it as a standard content page.

The content page contains a content tag <asp:Content> with a reference to the master page (ContentPlaceHolderId="CPH1").

This content page was saved with the name "mypage1.aspx".

When the user requests this page, ASP.NET merges the content page with the master page.

Click to display mypage1.aspx.

Note: The content text must be inside the <asp:Content> tag. No content is allowed outside the tag.

Content Page With Controls

< %@ Page MasterPageFile="master1.master" %>

< asp:Content ContentPlaceHolderId="CPH1" runat="server">< h2>W3Schools</h2>< form runat="server">< asp:TextBox id="textbox1" runat="server" />< asp:Button id="button1" runat="server" text="Button" />< /form>< /asp:Content>

The content page above demonstrates how .NET controls can be inserted into the content page just like an into an ordinary page.

Click to display mypage2.aspx.

« Previous Next Chapter »

ASP.NET 2.0 - Navigation

« Previous Next Chapter »

ASP.NET 2.0 has built-in navigation controls

Web Site Navigation

Maintaining the menu of a large web site is difficult and time consuming.

In ASP.NET 2.0 the menu can be stored in a file to make it easier to maintain. This file is normally called web.sitemap, and is stored in the root directory of the web.

In addition, ASP.NET 2.0 has three new navigation controls:

Dynamic menus

TreeViews

Page 42: ASP

Site Map Path

The Sitemap File

The following sitemap file is used in this tutorial:

< ?xml version="1.0" encoding="ISO-8859-1" ?>< siteMap><siteMapNode title="Home" url="/aspnet/w3home.aspx"><siteMapNode title="Services" url="/aspnet/w3services.aspx"><siteMapNode title="Training" url="/aspnet/w3training.aspx"/><siteMapNode title="Support" url="/aspnet/w3support.aspx"/></siteMapNode></siteMapNode>< /siteMap>

Rules for creating a sitemap file:

The XML file must contain a <siteMap> tag surrounding the content

The <siteMap> tag can only have one <siteMapNode> child node (the "home" page)

Each <siteMapNode> can have several child nodes (web pages)

Each <siteMapNode> has attributes defining page title and URL

Note: The sitemap file must be placed in the root directory of the web and the URL attributes must be relative to the root directory.

Dynamic Menu

The <asp:Menu> control displays a standard site navigation menu.

Code Example:

< asp:SiteMapDataSource id="nav1" runat="server" />

< form runat="server">< asp:Menu runat="server" DataSourceId="nav1" />< /form>

The <asp:Menu> control in the example above is a placeholder for a server created navigation menu.

The data source of the control is defined by the DataSourceId attribute. The id="nav1" connects it to the <asp:SiteMapDataSource> control.

The <asp:SiteMapDataSource> control automatically connects to the default sitemap file (web.sitemap).

Click here to see a demo of Menu, TreeView, and SiteMapPath

TreeView

The <asp:TreeView> control displays a multi level navigation menu.

The menu looks like a tree with branches that can be opened or closed with + or - symbol.

Code Example:

< asp:SiteMapDataSource id="nav1" runat="server" />

< form runat="server">< asp:TreeView runat="server" DataSourceId="nav1" />< /form>

Page 43: ASP

The <asp:TreeView> control in the example above is a placeholder for a server created navigation menu.

The data source of the control is defined by the DataSourceId attribute. The id="nav1" connects it to the <asp:SiteMapDataSource> control.

The <asp:SiteMapDataSource> control automatically connects to the default sitemap file (web.sitemap).

Click here to see a demo of Menu, TreeView, and SiteMapPath

SiteMapPath

The SiteMapPath control displays the trail (navigation path) to the current page. The path acts as clickable links to previous pages.

Unlike the TreeView and Menu control the SiteMapPath control does NOT use a SiteMapDataSource. The SiteMapPath control uses the web.sitemap file by default.

Tips: If the SiteMapPath displays incorrectly, most likely there is an URL error (typo) in the web.sitemap file.

Code Example:

< form runat="server">< asp:SiteMapPath runat="server" />< /form>

The <asp:SiteMapPath> control in the example above is a placeholder for a server created site path display.

Click here to see a demo of Menu, TreeView, and SiteMapPath

« Previous Next Chapter »

Page 44: ASP

HTML Server Controls

« Previous Next Chapter »

HTML server controls are HTML tags understood by the server.

HTML Server Controls

HTML elements in ASP.NET files are, by default, treated as text. To make these elements programmable, add a runat="server" attribute to the HTML element. This attribute indicates that the element should be treated as a server control.

Note: All HTML server controls must be within a <form> tag with the runat="server" attribute!

Note: ASP.NET requires that all HTML elements must be properly closed and properly nested.

HTML Server Control Description

HtmlAnchor Controls an <a> HTML element

HtmlButton Controls a <button> HTML element

HtmlForm Controls a <form> HTML element

HtmlGeneric Controls other HTML element not specified by a specific HTML server control, like <body>, <div>, <span>, etc.

HtmlImage Controls an <image> HTML element

HtmlInputButton Controls <input type="button">, <input type="submit">, and <input type="reset"> HTML elements

HtmlInputCheckBox Controls an <input type="checkbox"> HTML element

HtmlInputFile Controls an <input type="file"> HTML element

HtmlInputHidden Controls an <input type="hidden"> HTML element

HtmlInputImage Controls an <input type="image"> HTML element

HtmlInputRadioButton Controls an <input type="radio"> HTML element

HtmlInputText Controls <input type="text"> and <input type="password"> HTML elements

HtmlSelect Controls a <select> HTML element

HtmlTable Controls a <table> HTML element

HtmlTableCell Controls <td>and <th> HTML elements

HtmlTableRow Controls a <tr> HTML element

HtmlTextArea Controls a <textarea> HTML element

« Previous Next Chapter »

ASP.NET HtmlAnchor Control

HTML Server Controls

Definition and Usage

The HtmlAnchor control is used to control an <a> element. In HTML, the <a> element is used to create a hyperlink. The hyperlink may link to a bookmark or to another Web page.

Properties

Property Description

Attributes Returns all attribute name and value pairs of the element

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

HRef The URL target of the link

Page 45: ASP

id A unique id for the control

InnerHtml Sets or returns the content between the opening and closing tags of the HTML element. Special characters are not automatically converted to HTML entities

InnerText Sets or returns all text between the opening and closing tags of the HTML element. Special characters are automatically converted to HTML entities

Name The name of the anchor

OnServerClick The name of the function to be executed when the link is clicked

runat Specifies that the control is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Target The target window to open

Title A title to be displayed by the browser (like the title attribute of the img element)

Visible A Boolean value that indicates whether or not the control should be visible

Example

HTMLAnchorDeclare two HtmlAnchor controls in an .aspx file (remember to embed the control inside an HtmlForm control). Then modify the URL, target, and title of the HtmlAnchor controls in an event handler (an event handler is a subroutine that executes code for a given event). The Page_Load event is one of many events that ASP .NET understands.

ASP.NET HtmlButton Control

HTML Server Controls

Definition and Usage

The HtmlButton control is used to control a <button> element. In HTML, the <button> element is used to create a push button.

Properties

Property Description

Attributes Returns all attribute name and value pairs of the element

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

id A unique id for the control

InnerHtml Sets or returns the content between the opening and closing tags of the HTML element. Special characters are not automatically converted to HTML entities

InnerText Sets or returns all text between the opening and closing tags of the HTML element. Special characters are automatically converted to HTML entities

OnServerClick The name of the function to be executed when the button is clicked

runat Specifies that the control is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Visible A Boolean value that indicates whether or not the control should be visible

Example

HTMLButtonDeclare two HtmlButton controls in an .aspx file (remember to embed the control inside an HtmlForm control). Next, write an event handler that specifies what to happen when a button is clicked.

ASP.NET HtmlForm Control

Page 46: ASP

HTML Server Controls

Definition and Usage

The HtmlForm control is used to control a <form> element. In HTML, the <form> element is used to create a form.

Note: All HTML server controls must be within the HtmlForm control!

Note: You can only have one HtmlForm control on a single page!

Properties

Property Description

Action A URL that defines where to send the data when the form is submitted.

Note: This attribute is always set to the URL of the page itself!

Attributes Returns all attribute name and value pairs of the element

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

EncType The mime type used to encode the content of the form

id A unique id for the control

InnerHtml Sets or returns the content between the opening and closing tags of the HTML element. Special characters are not automatically converted to HTML entities

InnerText Sets or returns all text between the opening and closing tags of the HTML element. Special characters are automatically converted to HTML entities

Method How the form posts data to the server. Legal values are: "post" and "get". Default is "post"

Name The name of the form

runat Specifies that the control is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Target The target window to load the URL

Visible A Boolean value that indicates whether or not the control should be visible

Example

HTMLFormDeclare one HtmlInputText controls, one HtmlInputButton control, and one HtmlGeneric control in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine writes a welcome message to the p element.

ASP.NET HtmlGeneric Control

HTML Server Controls

Definition and Usage

The HtmlGeneric control is used to control other HTML element not specified by a specific HTML server control, like <body>, <div>, <span>, <font>, <p>, etc.

Properties

Property Description

Attributes Returns all attribute name and value pairs of the element

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

Page 47: ASP

id A unique id for the control

InnerHtml Sets or returns the content between the opening and closing tags of the HTML element. Special characters are not automatically converted to HTML entities

InnerText Sets or returns all text between the opening and closing tags of the HTML element. Special characters are automatically converted to HTML entities

runat Specifies that the control is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Visible A Boolean value that indicates whether or not the control should be visible

Example

HTMLGenericDeclare one HtmlInputText controls, one HtmlInputButton control, and one HtmlGeneric control (the <p> tag) in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine writes a welcome message to the p element.

ASP.NET HtmlImage Control

HTML Server Controls

Definition and Usage

The HtmlImage control is used to control an <img> element. In HTML, the <img> element is used to display an image.

Properties

Property Description

Align How to align the image according to surrounding elements. Legal values are:

top

middle

bottom

left

right

Alt A short description of the image

Attributes Returns all attribute name and value pairs of the element

Border The width of the borders around the image

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

Height The height of the image

id A unique id for the control

runat Specifies that the control is a server control. Must be set to "server"

Src The URL of the image to display

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Visible A Boolean value that indicates whether or not the control should be visible

Width The width of the image

Examples

HTMLImageDeclare an HtmlImage control in an .aspx file (remember to embed the control inside an HtmlForm control). Then we modify the src, alt and border properties of the HtmlImage control in an event handler (an event handler is a subroutine that executes code for a given event). The Page_Load event is one of many events that ASP .NET understands:

Page 48: ASP

HTMLImage 2Declare an HtmlImage and an HTMLSelect control in an .aspx file (remember to embed the controls inside an HtmlForm control). Then we modify the src property of the HtmlImage control based on user choices. The value selected in the HtmlSelect control determines which image to display.

ASP.NET HtmlInputButton Control

HTML Server Controls

Definition and Usage

The HtmlInputButton control is used to control <input type="button">, <input type="submit">, and <input type="reset"> elements. In HTML, these elements are used to create a command button, a submit button, and a reset button.

Properties

Property Description

Attributes Returns all attribute name and value pairs of the element

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

id A unique id for the element

Name The name of the element

OnServerClick The name of the function to be executed when the button is clicked

runat Specifies that the element is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Type The type of the element

Value The value of the element

Visible A Boolean value that indicates whether or not the control should be visible

Example

HTMLInputbuttonDeclare one HtmlInputText controls, one HtmlInputButton control, and one HtmlGeneric control in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine writes a welcome message to the p element.

ASP.NET HtmlInputCheckBox Control

HTML Server Controls

Definition and Usage

The HtmlInputCheckBox control is used to control an <input type="checkbox"> element. In HTML, this element is used to create a checkbox.

Properties and Events

Property Description

Attributes Returns all attribute name and value pairs of the element

Checked A Boolean value that specifies whether or not the element is to be checked

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

id A unique id for the control

Name The name of the element

Page 49: ASP

runat Specifies that the element is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Type The type of the element

Value The value of the element

Visible A Boolean value that indicates whether or not the control should be visible

Event Description

ServerChange Occurs when the state of the control has changed

Example

HTMLInputCheckboxDeclare two HtmlInputCheckBox controls, one HtmlInputButton control, and one HtmlGeneric in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine may respond in two ways: if the "red" checkbox is checked, the server sends the message "You prefer red!" to the p element. If the "blue" checkbox is checked, the server sends the message "You prefer blue!" to the p element.

ASP.NET HtmlInputFile Control

HTML Server Controls

Definition and Usage

The HtmlInputFile control is used to control an <input type="file"> element. In HTML, this element is used to upload a file to the server.

Properties

Property Description

Accept List of acceptable MIME types

Attributes Returns all attribute name and value pairs of the element

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

id A unique id for the element

MaxLength The maximum number of characters allowed in this element

Name The name of the element

PostedFile Gets access to the posted file

runat Specifies that the element is a server control. Must be set to "server"

Size The width of the element

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Type The type of the element

Value The value of the element

Visible A Boolean value that indicates whether or not the control should be visible

Example

Declare one HtmlInputFile control, one HtmlInputButton control, and three HtmlGeneric controls in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The file name and file type are displayed on the page, while the file itself is uploaded to the c directory on the server:

<script runat="server">Sub submit(Sender as Object, e as EventArgs)fname.InnerHtml=MyFile.PostedFile.FileNameclength.InnerHtml=MyFile.PostedFile.ContentLengthMyFile.PostedFile.SaveAs("c:\uploadfile.txt")End Sub< /script>

Page 50: ASP

< html>< body>

< form method="post"enctype="multipart/form-data" runat="server">< p>Select file to upload to server:< input id="MyFile" type="file" size="40" runat="server">< /p>< p>< input type="submit" value="Upload!" OnServerclick="submit"runat="server">< /p>< p>< div runat="server">FileName: <span id="fname" runat="server"/><br />ContentLength: <span id="clength" runat="server"/> bytes< /div>< /p>< /form>

< /body>< /html>

ASP.NET HtmlInputHidden Control

HTML Server Controls

Definition and Usage

The HtmlInputHidden control is used to control an <input type="hidden"> element. In HTML, this element is used to create a hidden input field.

Properties and Events

Property Description

Attributes Returns all attribute name and value pairs of the element

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

id A unique id for the element

Name The name of the element

runat Specifies that the element is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Type The type of the element

Value The value of the hidden field

Visible A Boolean value that indicates whether or not the control should be visible

Event Description

ServerChange When the content of the element has changed

Example

HTMLInputHiddenDeclare one HtmlInputHidden control, one HtmlInputText control, one HtmlInputButton control, and one HtmlGeneric control in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine sets the value of the hidden field equal to value of the input field and then displays the value of the hidden field in the p element.

ASP.NET HtmlInputImage Control

Page 51: ASP

HTML Server Controls

Definition and Usage

The HtmlInputImage control is used to control an <input type="image"> element. In HTML, this element is used to create an input button using an image, instead of a regular push-style button.

Properties and Events

Property Description

Align The alignment of the image

Alt An alternate text to display for the image

Attributes Returns all attribute name and value pairs of the element

Border The width of the borders around the element

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

id A unique id for the control

Name The name of the element

OnServerClick The name of the function to be executed when the image is clicked

runat Specifies that the element is a server control. Must be set to "server"

Src The source of the image

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Type The type of the element

Value The value of the element

Visible A Boolean value that indicates whether or not the control should be visible

Example

HTMLInputImageDeclare two HtmlInputImage controls and one HtmlGeneric control in an .aspx file (remember to embed the controls inside an HtmlForm control). If the user clicks on the first image, the button1 subroutine is executed. This subroutine sends the message "You clicked the smiley button!" to the p element. If the user clicks on the second image, the button2 subroutine is executed. This subroutine sends the message "You clicked the angry button!" to the p element.

ASP.NET HtmlInputText Control

HTML Server Controls

Definition and Usage

The HtmlInputText control is used to control <input type="text"> and <input type="password"> elements. In HTML, these elements are used to create a text field and a password field.

Properties

Property Description

Attributes Returns all attribute name and value pairs of the element

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

id A unique id for the element

MaxLength The maximum number of characters allowed in this element

Name The name of the element

runat Specifies that the element is a server control. Must be set to "server"

Size The width of the element

Page 52: ASP

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Type The type of the element

Value The value of the element

Visible A Boolean value that indicates whether or not the control should be visible

Example

HTMLInputTextDeclare one HtmlInputText controls, one HtmlInputButton control, and one HtmlGeneric control in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine writes a welcome message to the p element.

ASP.NET HtmlSelect Control

HTML Server Controls

Definition and Usage

The HtmlSelect control is used to control a <select> element. In HTML, the <select> element is used to create a drop-down list.

Properties

Property Description

Attributes Returns all attribute name and value pairs of the element

DataMember A name of a data table to use

DataSource A data source to use

DataTextField A field in the data source to be displayed in the drop-down list

DataValueField A field in the data source that specifies the value of each selectable item in the drop-down list

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

id A unique id for the control

InnerHtml Sets or returns the content between the opening and closing tags of the HTML element. Special characters are not automatically converted to HTML entities

InnerText Sets or returns all text between the opening and closing tags of the HTML element. Special characters are automatically converted to HTML entities

Items The list of items in the drop-down list

Multiple Whether multiple items can be selected at a time

OnServerChange The name of the function to be executed when the selected item has changed

runat Specifies that the control is a server control. Must be set to "server"

SelectedIndex The index of the currently selected item

Size The number of visible items in the drop-down list

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Value The value of the currently selected item

Visible A Boolean value that indicates whether or not the control should be visible

Example

HTMLSelectDeclare an HtmlImage and an HTMLSelect control in an .aspx file (remember to embed the controls inside an HtmlForm control). Then modify the src property of the HtmlImage control based on user choices. The value selected in the HtmlSelect control determines which image to display.

ASP.NET HtmlTable Control

Page 53: ASP

HTML Server Controls

Definition and Usage

The HtmlTable control is used to control a <table> element. In HTML, the <table> element is used to create a table.

Properties

Property Description

Align Specifies the alignment of the table

Attributes Returns all attribute name and value pairs of the element

BGColor Specifies the background color of the table

Border Specifies the width of the borders

Tip: Set border="0" to display tables with no borders!

BorderColor Specifies the color of the borders

CellPadding Specifies the space between the cell walls and contents

CellSpacing Specifies the space between cells

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

Height Specifies the height of the table

id A unique id for the control

InnerHtml Sets or returns the content between the opening and closing tags of the HTML element. Special characters are not automatically converted to HTML entities

InnerText Sets or returns all text between the opening and closing tags of the HTML element. Special characters are automatically converted to HTML entities

Rows Returns an HtmlRowCollection object which represents all rows in the table

runat Specifies that the control is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Visible A Boolean value that indicates whether or not the control should be visible

Width Specifies the width of the table

Examples

HTMLTableDeclare two HtmlSelect controls, one HtmlInputButton control, and one HtmlTable control in an .aspx file (remember to embed the controls inside an HtmlForm control). The user may choose number of cells and rows. When the submit button is triggered, the submit subroutine is executed. The submit subroutine generates the table based on what the user did input.

HTMLTable 2Declare an HtmlTable control and an HtmlInputButton control in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine modifies the background color and the border color of the table, it also changes the contents of the cells.

ASP.NET HtmlTableCell Control

HTML Server Controls

Definition and Usage

The HtmlTableCell control is used to control <td> and <th> elements. In HTML, these elements are used to create table cells and header table cells.

Page 54: ASP

Properties

Property Description

Align The horizontal alignment of cell content

Attributes Returns all attribute name and value pairs of the element

BGColor The background color of the cell

BorderColor The color of the borders

ColSpan The number of columns this cell should span

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

Height The height of the cell

id A unique id for the control

InnerHtml Sets or returns the content between the opening and closing tags of the HTML element. Special characters are not automatically converted to HTML entities

InnerText Sets or returns all text between the opening and closing tags of the HTML element. Special characters are automatically converted to HTML entities

Nowrap A Boolean value that specifies whether or not the text within this control should wrap

RowSpan The number of rows this cell should span

runat Specifies that the control is a server control. Must be set to "server"

Style Gets the CSS properties that are applied to the control

TagName Returns the element tag name

VAlign The vertical alignment of cell content

Visible A Boolean value that indicates whether or not the control should be visible

Width The width of the cell

Examples

HTMLTableDeclare two HtmlSelect controls, one HtmlInputButton control, and one HtmlTable control in an .aspx file (remember to embed the controls inside an HtmlForm control). The user may choose number of cells and rows. When the submit button is triggered, the submit subroutine is executed. The submit subroutine generates the table based on what the user did input.

HTMLTable 2Declare an HtmlTable control and an HtmlInputButton control in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine modifies the background color and the border color of the table, it also changes the contents of the cells.

ASP.NET HtmlTableRow Control

HTML Server Controls

Definition and Usage

The HtmlTableRow control is used to control a <tr> element. In HTML, the <tr> element is used to create a table row.

Properties

Property Description

Align The alignment of the row

Attributes Returns all attribute name and value pairs of the element

BGColor The background color of the row

BorderColor The color of the borders

Cells Returns the cells in this row

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

Height The height of the row

id A unique id for the control

InnerHtml Sets or returns the content between the opening and closing tags of the HTML element. Special characters are not

Page 55: ASP

automatically converted to HTML entities

InnerText Sets or returns all text between the opening and closing tags of the HTML element. Special characters are automatically converted to HTML entities

runat Specifies that the control is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

VAlign The vertical alignment of cells in the row

Visible A Boolean value that indicates whether or not the control should be visible

Examples

HTMLTableDeclare two HtmlSelect controls, one HtmlInputButton control, and one HtmlTable control in an .aspx file (remember to embed the controls inside an HtmlForm control). The user may choose number of cells and rows. When the submit button is triggered, the submit subroutine is executed. The submit subroutine generates the table based on what the user did input.

HTMLTable 2Declare an HtmlTable control and an HtmlInputButton control in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine modifies the background color and the border color of the table, it also changes the contents of the cells.

ASP.NET HtmlTextArea Control

HTML Server Controls

Definition and Usage

The HtmlTextArea control is used to control a <textarea> element. In HTML, the <textarea> element is used to create a text area.

Properties and Events

Property Description

Attributes Returns all attribute name and value pairs of the element

Cols The number of columns of the text area

Disabled A Boolean value that indicates whether or not the control should be disabled. Default is false

id A unique id for the control

InnerHtml Sets or returns the content between the opening and closing tags of the HTML element. Special characters are not automatically converted to HTML entities

InnerText Sets or returns all text between the opening and closing tags of the HTML element. Special characters are automatically converted to HTML entities

Name The unique name for the text area

OnServerChange The name of the function to be executed when the contents of the textarea is changed

Rows The number of visible rows of the text area

runat Specifies that the control is a server control. Must be set to "server"

Style Sets or returns the CSS properties that are applied to the control

TagName Returns the element tag name

Value The content of the textarea

Visible A Boolean value that indicates whether or not the control should be visible

Example

HTMLTextareaDeclare an HtmlTextarea control, an HtmlInputButton control, and an HtmlGeneric control in an .aspx file (remember to embed the controls inside an HtmlForm control). When the submit button is triggered, the submit subroutine is executed. The submit subroutine sends the message "You wrote: " and the text the user wrote in the text area to the p element.

Page 56: ASP
Page 57: ASP

Web Server Controls

« Previous Next Chapter »

Web server controls are special ASP.NET tags understood by the server.

Web Server Controls

Like HTML server controls, Web server controls are also created on the server and they require a runat="server" attribute to work. However, Web server controls do not necessarily map to any existing HTML elements and they may represent more complex elements.

The syntax for creating a Web server control is:

<asp:control_name id="some_id" runat="server" />

Web Server Control Description

AdRotator Displays a sequence of images

Button Displays a push button

Calendar Displays a calendar

CalendarDay A day in a calendar control

CheckBox Displays a check box

CheckBoxList Creates a multi-selection check box group

DataGrid Displays fields of a data source in a grid

DataList Displays items from a data source by using templates

DropDownList Creates a drop-down list

HyperLink Creates a hyperlink

Image Displays an image

ImageButton Displays a clickable image

Label Displays static content which is programmable (lets you apply styles to its content)

LinkButton Creates a hyperlink button

ListBox Creates a single- or multi-selection drop-down list

ListItem Creates an item in a list

Literal Displays static content which is programmable(does not let you apply styles to its content)

Panel Provides a container for other controls

PlaceHolder Reserves space for controls added by code

RadioButton Creates a radio button

RadioButtonList Creates a group of radio buttons

BulletedList Creates a list in bullet format

Repeater Displays a repeated list of items bound to the control

Style Sets the style of controls

Table Creates a table

TableCell Creates a table cell

TableRow Creates a table row

TextBox Creates a text box

Xml Displays an XML file or the results of an XSL transform

« Previous Next Chapter »

ASP.NET AdRotator Control

Web Server Controls

Definition and Usage

The AdRotator control is used to display a sequence of ad images.

Page 58: ASP

This control uses an XML file to store the ad information. The XML file must begin and end with an <Advertisements> tag. Inside the <Advertisements> tag there may be several <Ad> tags which defines each ad.

The predefined elements inside the <Ad> tag are listed below:

Element Description

<ImageUrl> Optional. The path to the image file

<NavigateUrl> Optional. The URL to link to if the user clicks the ad

<AlternateText> Optional. An alternate text for the image

<Keyword> Optional. A category for the ad

<Impressions> Optional. The display rates in percent of the hits

Properties

Property Description .NET

AdvertisementFile Specifies the path to the XML file that contains ad information 1.0

AlternateTextField Specifies a data field to be used instead of the Alt text for an ad 2.0

ImageUrlField Specifies a data field to be used instead of the ImageURL attribute for an ad 2.0

KeywordFilter Specifies a filter to limit ads after categories 1.0

NavigateUrlField Specifies a data field to be used instead of the NavigateUrl attribute for an ad 2.0

runat Specifies that the control is a server control. Must be set to "server" 1.0

Target Specifies where to open the URL 1.0

Web Control Standard Properties

AccessKey, Attributes, BackColor, BorderColor, BorderStyle, BorderWidth, CssClass, Enabled, Font, EnableTheming, ForeColor, Height, IsEnabled, SkinID, Style, TabIndex, ToolTip, Width

For a full description, go to Web Control Standard Attributes.

Control Standard Properties

AppRelativeTemplateSourceDirectory, BindingContainer, ClientID, Controls, EnableTheming, EnableViewState, ID, NamingContainer, Page, Parent, Site, TemplateControl, TemplateSourceDirectory, UniqueID, Visible

For a full description, go to Control Standard Attributes.

AdRotator AdvertisementFile Property

  AdRotator Control

Definition and Usage

The AdvertisementFile property is used to set or return the path to the XML file that contains the advertisement data.

Syntax

<asp:AdRotator AdvertisementFile="path" runat="server" />

Attribute Description

path A string specifying the location of the XML file that contains the advertisement data

Possible values:

Absolute path (like http://www.w3schools.com/ads/bigad.xml )

Page 59: ASP

Virtual root path (like ~/ads/bigad.xml )

Relative Path( like ../ads/bigad.xml ).

Example

Example

Declare an AdRotator (Check the "Try-It-Yourself" to see the XML file"):

<form runat="server"><asp:AdRotator id="ad1" runat="server"AdvertisementFile="Ad1.xml" /></form>

Show example »

AdRotator Target Property

  AdRotator Control

Definition and Usage

The Target property is used to set or return where to open the advertisement URL.

Syntax

<asp:AdRotator Target="target" runat="server" />

Attribute Description

target A string that specifies where to open the target URL.

_blank - the target URL will open in a new window

_self - the target URL will open in the same frame as it was clicked

_parent - the target URL will open in the parent frameset

_top - the target URL will open in the full body of the window

Page 60: ASP

Example

Example

Set a target window for an AdRotator (Check the "Try-It-Yourself" to see the XML file"):

<form runat="server"><asp:AdRotator id="ad1" runat="server"AdvertisementFile="Ad1.xml" target="_blank" /></form>

Show example »

ASP.NET Web Control Standard Properties

  Complete Web Control Reference

Properties

The following table describes the properties inherited from the WebControl class:

Property Description .NET

AccessKey The keyboard key for accessing a control 1.0

Attributes The collection of attributes applied to a control 1.0

BackColor The background color of a control 1.0

BorderColor The border color of a control 1.0

BorderStyle The border style of a control 1.0

BorderWidth The border width of a control 1.0

CssClass The CSS class applied to a control 1.0

Enabled A value indicating whether or not control is enabled 1.0

Font The font attributes for the control 1,0

EnableTheming Whether or not themes apply for a control 2.0

ForeColor The foreground color of the control 1.0

Height The height of the control 1.0

IsEnabled A value indicating whether or not control is enabled (Get value only) 2.0

SkinID The skin of the control 2.0

Style The inline CSS style of the control 1.0

TabIndex The tab order of the control 1.0

ToolTip The text that appears when the user rests the mouse pointer over a control 1.0

Page 61: ASP

Width The width of the control 1.0

SP.NET AccessKey Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The AccessKey property is used to set or return a keyboard key used to access a control.

Note: Use Alt + AccessKey to give focus to the element with the specified access key.

Syntax

<asp:webcontrol id="id" AccessKey="accessKey" runat="server" />

 

Attribute Description

AccessKey A character be used to access the control

Example

The following example sets the access key of a ceckbox:

<form runat="server"><asp:CheckBox id="check1" AccessKey="b" runat="server" /></form>

Show example »

ASP.NET BackColor Property

Page 62: ASP

  Complete Web Control Standard Properties Reference

Definition and Usage

The BackColor property is used to set or return the background color of a control.

Syntax

<asp:webcontrol id="id" BackColor="color" runat="server" />

 

Attribute Description

color The color to set as background color of a control. Must be a valid HTML color

Example

The following example sets the background color of a button:

<form runat="server"><asp:Button id="button1" Text="Submit"BackColor="#E0FFFF" runat="server" /></form>

Show example »

ASP.NET BorderColor Property

  Complete Web Control Standard Properties Reference

Page 63: ASP

Definition and Usage

The BorderColor property is used to set or return the border color of a control.

Syntax

<asp:webcontrol id="id" BorderColor="color" runat="server" />

 

Attribute Description

color The color to set as background color of a control. Must be a valid HTML color

Example

The following example sets the border color of a table:

<form runat="server"><asp:Table runat="server" BorderColor="#FF0000"BorderWidth="5" GridLines="vertical">  <asp:TableRow>    <asp:TableCell>Hello</asp:TableCell>    <asp:TableCell>World</asp:TableCell>  </asp:TableRow></asp:Table></form>

Show example »

ASP.NET BorderStyle Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The BorderStyke property is used to set or return the border style of a control.

Syntax

<asp:webcontrol id="id" BorderStyle="style" runat="server" />

Possible Style Values

Value Description

notSet Border style is not set

none Defines no border

dotted Defines a dotted border

dashed Defines a dashed border

solid Defines a solid border

double Defines two borders. The width of the two borders are the same as the border-width value

groove Defines a 3D grooved border. The effect depends on the border-color value

ridge Defines a 3D ridged border. The effect depends on the border-color value

inset Defines a 3D inset border. The effect depends on the border-color value

Page 64: ASP

outset Defines a 3D outset border. The effect depends on the border-color value

Example

The following example sets the border style of a table:

<form runat="server"><asp:Table runat="server" BorderStyle="dotted"BorderWidth="5" GridLines="vertical">  <asp:TableRow>    <asp:TableCell>Hello</asp:TableCell>    <asp:TableCell>World</asp:TableCell>  </asp:TableRow></asp:Table></form>

Show example »

ASP.NET BorderWidth Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The BorderWidth property is used to set or return the border width of a control.

Syntax

<asp:webcontrol id="id" BorderWidth="length" runat="server" />

Attribute Description

length The width of the border. Must be a valid .NET length unit. Valid length units are: cm, mm, in, pt, pc, or px

Example

The following example sets the border width of a table:

Page 65: ASP

<form runat="server"><asp:Table runat="server" BorderWidth="5" GridLines="vertical">  <asp:TableRow>    <asp:TableCell>Hello</asp:TableCell>    <asp:TableCell>World</asp:TableCell>  </asp:TableRow></asp:Table></form>

Show example »

SP.NET CssClass Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The CssClass property is used to set or return a CSS style class to a control.

Syntax

<asp:webcontrol id="id" CssClass="style" runat="server" />

 

Attribute Description

style A String specifying the CSS class used on the control

Example

The following example sets the CSS style to a button:

<style>.TestStyle  {  font: 12pt verdana;  font-weight:700;  color:orange;  }</style>

<form runat="server">

Page 66: ASP

<asp:Button id="Button" CssClass="TestStyle"Text="Submit" runat="server"/></form>

Show example »

ASP.NET Enabled Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The Enabled property is used to enable or disable a control.

Syntax

<asp:webcontrol id="id" Enabled=true|false runat="server" />

Example

The following example sets the disables a button control:

<html><body>

<form runat="server"><asp:Button id="Button2" Enabled=False Text="Submit" runat="server"/></form>

</body></html>

Show example »

ASP.NET Font Property

Page 67: ASP

  Complete Web Control Standard Properties Reference

Definition and Usage

The Font property is used to set or return the font of a control.

Syntax

<asp:webcontrol id="id" font-subproperty="value" runat="server" />

Font SubProperties

Value Description

Bold Bold sub property. Possible values are TRUE or FALSE

Italic Italic sub property. Possible values are TRUE or FALSE

Name Font name property (like "Verdana" or "Arial"). When you set this property, the Names property is automatically updated with a single element array with the value of the Name property

Names An array of font names. When you set this property, the Name property is automatically updated with the first element in the array

Strikeout Strikeout sub property. Possible values are TRUE or FALSE

Underline

Strikeout sub property. Possible values are TRUE or FALSE

Size Font size sub property. Specify the font size

Example

The following example sets the font of a button control:

<form runat="server"><asp:Button id="Button1" Text="Submit"Font-Name="Verdana" Font-Size="15" runat="server"/></form>

Show example »

ASP.NET ForeColor Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The ForeColor property is used to set or return the foreground color (normally the text color) of a control.

Syntax

<asp:webcontrol id="id" ForeColor="color" runat="server" />

 

Attribute Description

color The color to set as foreground color of a control. Must be a valid HTML color

Page 68: ASP

Example

The following example sets the foreground color of a button:

<form runat="server"><asp:Button id="button1" Text="Submit"ForeColor="#FF0000" runat="server" /></form>

Show example »

ASP.NET Height Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The Height property is used to set or return the height of a control.

Syntax

<asp:webcontrol id="id" Height="value" runat="server" />

Attribute Description

value The height of control. Must be a number representing pixels or a percent value representing the parent objects height

Example

The following example sets the height of a button control:

<form runat="server"><asp:Button id="button1" Text="Submit"Height="50px" runat="server" /></form>

Show example »

ASP.NET Style Property

  Complete Web Control Standard Properties Reference

Definition and Usage

Page 69: ASP

The Style property is used to set or return an inline CSS style to a control.

Syntax

<asp:webcontrol id="id" Style="style" runat="server" />

 

Attribute Description

style A String specifying CSS style for the inline stylesheet

Example

The following example sets the CSS style of a button control:

<form runat="server"><asp:Button id="Button" Text="Submit" runat="server"Style="font: 12pt Verdana;font-weight:700;color:orange;" /></form>

Show example »

ASP.NET TabIndex Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The TabIndex property is used to set or return the tab order of a control.

The tab order is the order the control appear if you navigate the page using the "tab" button on the keyboard.

Syntax

<asp:webcontrol id="id" TabIndex="number" runat="server" />

 

Attribute Description

number Specifies the tab order of the control

Example

The following example sets the tab index key of a button control:

<form runat="server"><asp:CheckBox id="check1" TabIndex="1" runat="server" /></form>

Show example »

Page 70: ASP

ASP.NET ToolTip Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The ToolTip property is used to set or return the text that appears when the user rests the mouse pointer over a control.

Syntax

<asp:webcontrol id="id" ToolTip="string" runat="server" />

 

Attribute Description

string The text to appear when the user rests the mouse pointer over a control

Example

The following example sets the tool tip text of a button control:

<form runat="server"><asp:Button id="button1" Text="Submit" runat="server"ToolTip="This is an example-button" /></form>

Show example »

ASP.NET Width Property

  Complete Web Control Standard Properties Reference

Definition and Usage

The Width property is used to set or return the width of a control.

Syntax

<asp:webcontrol id="id" Width="value" runat="server" />

Attribute Description

value The width of control. Must be a number representing pixels or a percent value representing the parent objects width

Example

The following example sets the width of a button control:

Page 71: ASP

<form runat="server"><asp:Button id="button1" Text="Submit"Width="150px" runat="server" /></form>

Show example »

ASP.NET Control Standard Properties

  Complete Web Control Reference

Properties

The following table describes the properties inherited from the Control class:

Property Description .NET

AppRelativeTemplateSourceDirectory Gets or sets the application-relative virtual directory of the Page or UserControl object that contains this control.

1.0

BindingContainer The control that contains this control's data binding 1.0

ClientID The server control id created by ASP.NET. 1.0

Controls Gets a ControlCollection object that represents the child controls for a specified server control in the UI hierarchy.

1.0

EnableTheming A value indicating whether or not themes apply to the control 1.0

EnableViewState A value indicating whether or not the control persists its view state, and the view state of any child controls it contains, to the requesting client.

1,0

ID The id assigned to the control 2.0

NamingContainer A reference to the server control's naming container 1.0

Page A reference to the page that contains the control 1.0

Parent A reference to the control's parent 2.0

Site Information about the container of the current control (Get value only) 2.0

TemplateControl A reference to the template that contains the current control 1.0

TemplateSourceDirectory The virtual directory of the page/control that contains the current control 1.0

UniqueID The unique id for the server control (Get value only) 1.0

Visible A value indicating whether a control is rendered as UI 1.0

ASP.NET BindingContainer Property

  Complete Control Standard Properties Reference

Page 72: ASP

Definition and Usage

The BindingContainer property is a reference to the controls data binding control.

Tips and Notes

Note: This property is used internally by .NET. It is not intended to be called directly from your code

Note: The BindingContainer property is the same as the NamingContainer property, except when the control is part of a template.

Example

The following example shows the BindingContainer of the button control:

<script runat="server">Sub Button1_Click(sender As Object, e As EventArgs)  Response.Write("The binding container is: ")  Response.Write(button1.BindingContainer)End Sub</script>

<form runat="server" ><asp:Button ID="button1" OnClick="Button1_Click"Text="Get BindingContainer" runat="server" /></form>

Show example »

ASP.NET ClientID Property

  Complete Control Standard Properties Reference

Definition and Usage

Page 73: ASP

The ClientID property is a automatically generated identification for a control.

Example

The following example shows the ClientID of a button control:

<script runat="server">Sub Button1_Click(sender As Object, e As EventArgs)  Response.Write("The ClientID of the button is: ")  Response.Write(button1.ClientID)End Sub</script>

<form runat="server" ><asp:Button ID="button1" OnClick="Button1_Click"Text="Get ClientID" runat="server" /></form>

Show example »

ASP.NET ID Property

  Complete Control Standard Properties Reference

Definition and Usage

The ID property is used as identification for a control.

This property should always be set. It is used when other controls or scripts interact with the current control.

Syntax

<asp:webcontrol id="id" runat="server" />

Page 74: ASP

Example

The following example shows a button with the ID property set:

<form runat="server"><asp:Button id="button" text="Submit" runat="server" /></form>

Show example »

ASP.NET NamingContainer Property

  Complete Control Standard Properties Reference

Definition and Usage

The NamingContainer property is a reference to the naming container of the control.

Example

The following example shows the NamingContainer of the button control:

<script runat="server">Sub Button1_Click(sender As Object, e As EventArgs)  Response.Write("The naming container is: ")  Response.Write(button1.NamingContainer)End Sub</script>

<form runat="server" ><asp:Button ID="button1" OnClick="Button1_Click"Text="Get NamingContainer" runat="server" /></form>

Show example »

ASP.NET Page Property

Page 75: ASP

  Complete Control Standard Properties Reference

Definition and Usage

The Page property is a reference to the page that contains the control.

Example

The following example shows the Page that contains the button control:

<script runat="server">Sub Button1_Click(sender As Object, e As EventArgs)Response.Write("The Page containing the button is: ")Response.Write(button1.Page)End Sub</script>

<form runat="server" ><asp:Button ID="button1" OnClick="Button1_Click"Text="Get Page" runat="server" /></form>

Show example »

ASP.NET Parent Property

  Complete Control Standard Properties Reference

Definition and Usage

The Parent property is a reference to the parent of the control.

Page 76: ASP

Example

The following example shows the Parent element that contains the button control:

<script runat="server">Sub Button1_Click(sender As Object, e As EventArgs)Response.Write("The Parent of the button control is: ")Response.Write(button1.Parent)End Sub</script>

<form runat="server" ><asp:Button ID="button1" OnClick="Button1_Click"Text="Get Parent" runat="server" /></form>

Show example »

ASP.NET UniqueID Property

  Complete Control Standard Properties Reference

Definition and Usage

The UniqueID property is a unique, automatically generated identification for a control.

Example

The following example shows the UniqueID of a button control:

<script runat="server">Sub Button1_Click(sender As Object, e As EventArgs)  Response.Write("UniqueID is: " & button1.UniqueID)End Sub</script>

<form runat="server" ><asp:Button ID="button1" OnClick="Button1_Click"Text="Get UniqueID" runat="server" /></form>

Show example »

ASP.NET Visible Property

Page 77: ASP

  Complete Control Standard Properties Reference

Definition and Usage

The Visible property indicates whether or not a control is visible.

Syntax

<asp:webcontrol id="id" Visible="True|False" runat="server" />

Example

The following example shows the code for a button that is not visible:

<form runat="server"><asp:Button id="button1" Text="Submit"Visible="False" runat="server" /></form>

Show example »

Try it Yourself - Examples

AdRotatorDeclare an AdRotator control. Then we create an event handler for the AdCreated event, in the .aspx file, to override the value of the NavigateUrl element in the XML file.

Page 78: ASP

ASP.NET Button Control

Web Server Controls

Definition and Usage

The Button control is used to display a push button. The push button may be a submit button or a command button. By default, this control is a submit button.

A submit button does not have a command name and it posts the Web page back to the server when it is clicked. It is possible to write an event handler to control the actions performed when the submit button is clicked.

A command button has a command name and allows you to create multiple Button controls on a page. It is possible to write an event handler to control the actions performed when the command button is clicked.

Properties

Property Description .NET

CausesValidation Specifies if a page is validated when a button is clicked 1.0

CommandArgument Specifies additional information about the command to perform 1.0

CommandName Specifies the command associated with the Command event 1.0

OnClientClick Specifies the name of the function to be executed when a button is clicked 2.0

PostBackUrl Specifies the URL of the page to post to from the current page when a button is clicked 2.0

runat Specifies that the control is a server control. Must be set to "server" 1.0

Text Specifies the text on a button 1.0

UseSubmitBehavior Specifies whether or not a button uses the browser's submit mechanism or the ASP.NET postback mechanism

2.0

ValidationGroup Specifies the group of controls a button causes validation, when it posts back to the server 2.0

Web Control Standard Properties

AccessKey, Attributes, BackColor, BorderColor, BorderStyle, BorderWidth, CssClass, Enabled, Font, EnableTheming, ForeColor, Height, IsEnabled, SkinID, Style, TabIndex, ToolTip, Width

For a full description, go to Web Control Standard Attributes.

Control Standard Properties

AppRelativeTemplateSourceDirectory, BindingContainer, ClientID, Controls, EnableTheming, EnableViewState, ID, NamingContainer, Page, Parent, Site, TemplateControl, TemplateSourceDirectory, UniqueID, Visible

For a full description, go to Control Standard Attributes.

Try it Yourself - Examples

ButtonDeclare a submit Button control. Then create an event handler for the Click event which changes the text on the button.

Button 2Declare a submit Button control. Then create an event handler for the Click event which changes the text and the style of the button.

Button CausesValidation Property

Page 79: ASP

  Button Control

Definition and Usage

The CausesValidation property specifies if a page is validated when a Button control is clicked.

Page validation is performed when a button is clicked by default.

This property is mostly used to prevent validation when a cancel or reset button is clicked.

Syntax

<asp:Button CausesValidation="TRUE|FALSE" runat="server" />

Example

Example

The following example removes validation when a button is clicked:

<form runat="server"><asp:Button id="button1" runat="server"CausesValidation="FALSE" Text="Cancel" /></form>

Show example »

Button OnClientClick Property

  Button Control

Definition and Usage

The OnClientClick property is used to sets a client side script to be run when the Button control is clicked.

The script specified in this property is run by the Button's event "OnClick" in addition to the predefined script.

Syntax

<asp:Button OnClientClick="function" runat="server" />

Attribute Description

OnClientClick A client-side script to be run when button is clicked

Example

Example

Page 80: ASP

The following example runs two scripts when the Button control is clicked:

<script runat="server">Sub script1(obj As Object, e As EventArgs)  lblMsg.Text="Hello!"End Sub</script>

<html><body>

<form runat="server"><asp:Button OnClick="script1" OnClientClick="script2()" Text="Click Me" runat="server" /><br /><asp:label id="lblMsg" runat="server" /></form>

<script type="text/javascript">function script2()  {  return confirm('Hello!');  }</script>

</body></html>

Show example »

ASP.NET PostBackUrl Property

  Button Control

Definition and Usage

The PostBackUrl property is used to gets or sets the URL of the page to post when the Button control is clicked.

Syntax

<asp:Button PostBackUrl="string" runat="server" />

Attribute Description

PostBackUrl A string specifying the URL of the page to post to. Default is an empty string, this causes the page to post back to itself

Example

Example

The following example sets the post URL of a Button control:

<form runat="server">  Name:<asp:textbox id="TextBox1" runat=Server />  <asp:button id="Button1" Text="Submit"  PostBackUrl="demo_postbackurl.aspx" runat="Server" />

Page 81: ASP

</form>

Show example »

Button Text Property

  Button Control

Definition and Usage

The Text property is used to set or return the text on a button control.

Syntax

<asp:Button Text="string" runat="server" />

Attribute Description

text A string that specifies the text on the button control

Example

Example

The following example sets the text on a Button control:

<form runat="server"><asp:Button id="button1" runat="server" Text="Submit" /></form>

Show example »

Button UseSubmitBehavior Property

  Button Control

Definition and Usage

The UseSubmitBehavior property specifies if the Button control uses the browser's built-in submit function or the ASP.NET postback mechanism.

This property is set to TRUE if the control uses the browser's submit function. FALSE otherwise. Default value is TRUE.

When set to FALSE, ASP.NET adds a client-side script to post the form. This enables control developers to use the GetPostBackEventReference method to return the client postback event for the Button.

Syntax

<asp:Button UseSubmitBehavior="TRUE|FALSE" runat="server" />

Page 82: ASP

Example

Example

The following example uses the ASP.NET postback mechanism:

<script runat="server">Sub SubmitBtn(obj As Object, e As EventArgs)  lblMsg.Text = "Submitted using the ASP.NET postback mechanism."End Sub</script>

<form runat="server">Click the button:<asp:button id="Button1" runat="server"Text="Submit" onclick="SubmitBtn" UseSubmitBehavior="FALSE" /><br />

<asp:label id="lblMsg" runat="server"/></form>

Show example »

Button ValidationGroup Property

  Button Control

Definition and Usage

The ValidationGroup property specifies which group of control is validated on validation.

This property is mostly used when there are several buttons in a form.

Syntax

<asp:Button ValidationGroup="group" runat="server" />

Attribute Description

ValidationGroup The group of controls to validate

Example

Example

The following example validates the specific validation group:

<asp:textbox id="tb1" runat=Server /><asp:requiredfieldvalidator id="ReqField1" controltovalidate="tb1"validationgroup="valGroup1" ErrorMessage="Required" runat="server" />

<asp:button id="Button2" text="Validate" causesvalidation="True"validationgroup="valGroup2" runat="server" />

Page 84: ASP

ASP.NET Calendar Control

Web Server Controls

Definition and Usage

The Calendar control is used to display a calendar in the browser.

This control displays a one-month calendar that allows the user to select dates and move to the next and previous months.

Properties

Property Description .NET

Caption The caption of the calendar 2.0

CaptionAlign The alignment of the caption text 2.0

CellPadding The space, in pixels, between the cell walls and contents 1.0

CellSpacing The space, in pixels, between cells 1.0

DayHeaderStyle The style for displaying the names of the days 1.0

DayNameFormat The format for displaying the names of the days 1.0

DayStyle The style for displaying days 1.0

FirstDayOfWeek What should be the first day of week 1.0

NextMonthText The text displayed for the next month link 1.0

NextPrevFormat The format of the next and previous month links 1.0

NextPrevStyle The style for displaying next and previous month links 1.0

OtherMonthDayStyle The style for displaying days that are not in the current month 1.0

PrevMonthText The text displayed for the previous month link 1.0

runat Specifies that the control is a server control. Must be set to "server" 1.0

SelectedDate The selected date 1.0

SelectedDates The selected dates 1.0

SelectedDayStyle The style for selected days 1.0

SelectionMode How a user is allowed to select dates 1.0

SelectMonthText The text displayed for the month selection link 1.0

SelectorStyle The style for the month and weeks selection links 1.0

SelectWeekText The text displayed for the week selection link 1.0

ShowDayHeader A Boolean value that specifies whether the days of the week header should be shown 1.0

ShowGridLines A Boolean value that specifies whether the grid lines between days should be shown 1.0

ShowNextPrevMonth A Boolean value that specifies whether the next and previous month links should be shown 1.0

ShowTitle A Boolean value that specifies whether the title of the calendar should be shown 1.0

TitleFormat The format for the title of the calendar 1.0

TitleStyle The style of the title of the calendar 1.0

TodayDayStyle The style for today's date 1.0

TodaysDate Today's date 1.0

UseAccessibleHeader Specifying whether to use the <th> element for the day headers instead of the <td> element 2.0

VisibleDate The date that specifies the month that is currently visible in the calendar 1.0

WeekendDayStyle The style for weekends 1.0

OnDayRender The name of the function to be executed when when each day cell is created

OnSelectionChanged The name of the function to be executed when the user selects a day, week, or month

OnVisibleMonthChanged The name of the function to be executed when the user navigates to a different month

Web Control Standard Properties

AccessKey, Attributes, BackColor, BorderColor, BorderStyle, BorderWidth, CssClass, Enabled, Font, EnableTheming, ForeColor, Height, IsEnabled, SkinID, Style, TabIndex, ToolTip, Width

For a full description, go to Web Control Standard Attributes.

Page 85: ASP

Control Standard Properties

AppRelativeTemplateSourceDirectory, BindingContainer, ClientID, Controls, EnableTheming, EnableViewState, ID, NamingContainer, Page, Parent, Site, TemplateControl, TemplateSourceDirectory, UniqueID, Visible

For a full description, go to Control Standard Attributes.

Try it Yourself - Examples

CalendarDeclare a Calendar control in its simplest use.

Calendar 2Declare a Calendar control where the days are displayed with full names in blue, the weekends are displayed in red on a yellow background, and the current date is displayed with a green background.

Calendar 3Declare a Calendar control where the days are displayed with full names, the user may select a day, a week, or the whole month, and the selected day/week/month is displayed with a grey background color.

ASP.NET Caption Property

Complete Calendar Control Reference

Definition and Usage

The Caption property is used to get or set a text that is shown as a caption for the calendar.

Syntax

< asp:Calendar Caption="text" runat="server" />

Attribute Description

text The text to be shown as the calendars caption

Example

The following example sets the Caption property in a calendar:

< form runat="server">< asp:Calendar id="cal1" runat="server"Caption="This is a Caption text" />< /form>

Show example »

ASP.NET CaptionAlign Property

Complete Calendar Control Reference

Definition and Usage

Page 86: ASP

The CaptionAlign property is used to get or set the alignment of the caption text for a calendar.

Syntax

< asp:Calendar Caption="text" CaptionAlign="align" runat="server" />

Attribute Description

align Specifies the alignment of the caption text

Possible Values:

Top - Caption is displayed at the top of the calendar. Text is centered

Bottom - Caption is displayed at the bottom of the calendar. Text is centered

Left - Caption is displayed at the top of the calendar. Text is left-aligned

Right - Caption is displayed at the top of the calendar. Text is right-aligned

Example

The following example sets the Caption property in a calendar and aligns it to the bottom of the calendar:

< form runat="server">< asp:Calendar id="cal1" runat="server"Caption="This is a Caption text"CaptionAlign="bottom" /></form>

Show example »

ASP.NET CellPadding Property

Complete Calendar Control Reference

Definition and Usage

The CellPadding property is used to sets the space between the border and the contents of a calendar cell.

Syntax

< asp:Calendar CellPadding="pixels" runat="server" />

Attribute Description

pixels Specifies the space (in pixels) between the border and the contents of a calendar cell

Example

The following example shows a calendar with CellPadding 15:

< form runat="server">< asp:Calendar id="cal1" runat="server" CellPadding="15" />< /form>

Show example »

ASP.NET CellSpacing Property

Page 87: ASP

Complete Calendar Control Reference

Definition and Usage

The CellSpacing property is used to sets the space between calendar cells.

Note: This property does not display properly in FireFox browsers.

Syntax

< asp:Calendar CellSpacing="pixels" runat="server" />

Attribute Description

pixels Specifies the space (in pixels) between calendar cells

Example

The following example shows a calendar with CellSpacing 15:

< form runat="server">< asp:Calendar id="cal1" runat="server" CellSpacing="15" />< /form>

Show example »

ASP.NET DayHeaderStyle Property

Complete Calendar Control Reference

Definition and Usage

The DayHeaderStyle property is used to set or return the style of the weekday header in the calendar.

Syntax

< asp:Calendar runat="server">< DayHeaderStyle style="value" />< /asp:Calendar>

or

< asp:Calendar runat="server" DayHeaderStyle-style="value" />

Attribute Description

style Specifies the style to set. See the Style Control to see the possible styles and their values

value Specifies the value of the specified style

Example 1

The following example shows one way to set the DayHeaderStyle in a calendar:

< form runat="server">< asp:Calendar id="cal1" runat="server">< DayHeaderStyle ForeColor="#FF0000" />

Page 88: ASP

< /asp:Calendar>< /form>

Show example »

Example 2

The following example shows another way to set the DayHeaderStyle in a calendar:

< form runat="server">< asp:Calendar id="cal2" runat="server" DayHeaderStyle-ForeColor="#FF0000" />< /form>

Try-It-Yourself Demos

Set DayHeaderStyle of a Calendar control (with declaration and script)

SP.NET DayNameFormat Property

Complete Calendar Control Reference

Definition and Usage

The DayNameFormat property is used to set the format of the weekday names in the calendar.

Syntax

< asp:Calendar DayNameFormat="format" runat="server" />

Attribute Description

format Specifies the format for displaying the names of the days.

Possible values:

FirstLetter

FirstTwoLetters

Full

Short

Example

The following example shows a calendar with the full day name format:

< form runat="server">< asp:Calendar id="cal1" runat="server" DayNameFormat="Full" />< /form>

Show example »

ASP.NET DayStyle Property

Complete Calendar Control Reference

Page 89: ASP

Definition and Usage

The DayStyle property is used to set or return the style of the days in the calendar.

Syntax

< asp:Calendar runat="server">< DayStyle style="value" />< /asp:Calendar>

or

< asp:Calendar runat="server" DayStyle-style="value" />

Attribute Description

style Specifies the style to set. See the Style Control to see the possible styles and their values

value Specifies the value of the specified style

Example 1

The following example shows one way to set the DayStyle in a calendar:

< form runat="server">< asp:Calendar id="cal1" runat="server">< DayStyle ForeColor="#FF0000" />< /asp:Calendar>< /form>

Show example »

Example 2

The following example shows another way to set the DayStyle in a calendar:

< form runat="server">< asp:Calendar id="cal2" runat="server"DayStyle-ForeColor="#FF0000" />< /form>

Try-It-Yourself Demos

Set DayStyle of a Calendar control (with declaration and script)

ASP.NET FirstDayOfWeek Property

Complete Calendar Control Reference

Definition and Usage

The FirstDayOfWeek property is used to specify what day should be the first day of the week in the calendar.

Syntax

< asp:Calendar FirstDayOfWeek="day" runat="server" />

Attribute Description

Page 90: ASP

day Specifies the first day of the week in the calendar.

Possible values:

Default

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday

Sunday

Example

The following example shows a calendar with Wednesday set as the first day of the week:

< form runat="server">< asp:Calendar id="cal1" runat="server" FirstDayOfWeek="Wednesday" />< /form>

Show example »

ASP.NET NextMonthText Property

Complete Calendar Control Reference

Definition and Usage

The NextMonthText property is used to specify the text displayed for the next month link in a calendar.

Syntax

< asp:Calendar NextMonthText="string" runat="server" />

Attribute Description

string Specifies the text displayed for the next month link in the calendar. The default value is ">"

Example

The following example shows a calendar with the NextMonthText set to "Next":

< form runat="server">< asp:Calendar id="cal1" runat="server" NextMonthText="Next" />< /form>

Show example »

ASP.NET NextPrevFormat Property

Complete Calendar Control Reference

Page 91: ASP

Definition and Usage

The NextPrevFormat property is used to specify the format of the Next and Previous month links in the calendar.

Syntax

< asp:Calendar NextPrevFormat="format" runat="server" />

Attribute Description

format Specifies the format of the next and previous month links in the calendar.

Possible values:

ShortMonth

FullMonth

CustomText

Example

The following example shows a calendar with the NextPrevFormat set to "ShortMonth":

< form runat="server">< asp:Calendar id="cal1" runat="server" NextPrevFormat="ShortMonth" />< /form>

Show example »

ASP.NET NextPrevStyle Property

  Complete Calendar Control Reference

Definition and Usage

The NextPrevStyle property is used to set or return the style of the Next and Previous month links in the calendar.

Syntax

<asp:Calendar runat="server"><NextPrevStyle style="value" /></asp:Calendar>

or

<asp:Calendar runat="server" NextPrevStyle-style="value" />

Attribute Description

style Specifies the style to set. See the Style Control to see the possible styles and their values

value Specifies the value of the specified style

Page 92: ASP

Example 1

The following example shows one way to set the NextPrevStyle in a calendar:

<form runat="server"><asp:Calendar id="cal1" runat="server"><NextPrevStyle ForeColor="#FF0000" /></asp:Calendar></form>

Show example »

ASP.NET OtherMonthDayStyle Property

  Complete Calendar Control Reference

Definition and Usage

The OtherMonthDayStyle property is used to set or return the style of the days in the calendar that are not part of the current month.

Syntax

<asp:Calendar runat="server"><OtherMonthDayStyle style="value" /></asp:Calendar>

or

<asp:Calendar runat="server" OtherMonthDayStyle-style="value" />

Attribute Description

style Specifies the style to set. See the Style Control to see the possible styles and their values

value Specifies the value of the specified style

Example 1

The following example shows one way to set the OtherMonthDayStyle in a calendar:

<form runat="server"><asp:Calendar id="cal1" runat="server"><OtherMonthDayStyle ForeColor="#FF0000" /></asp:Calendar></form>

Show example »

ASP.NET PrevMonthText Property

  Complete Calendar Control Reference

Page 93: ASP

Definition and Usage

The PrevMonthText property is used to specify the text displayed for the previous month link in a calendar.

Syntax

<asp:Calendar PrevMonthText="string" runat="server" />

Attribute Description

string Specifies the text displayed for the previous month link in the calendar. The default value is "<"

Example

The following example shows a calendar with the PrevMonthText set to "Prev":

<form runat="server"><asp:Calendar id="cal1" runat="server" PrevMonthText="Prev" /></form>

Show example »

ASP.NET SelectedDate Property

  Complete Calendar Control Reference

Definition and Usage

The SelectedDate property is used to get or set the selected date on a calendar.

Example

The following example outputs the selected date when a date is selected:

<script language="VB" runat="server">Sub Change(obj As Object, e As EventArgs)  Response.Write("Date: ")  Response.Write(cal1.SelectedDate.ToShortDateString())End Sub</script>

Page 94: ASP

<form runat="server"><asp:Calendar id="cal1" runat="server"OnSelectionChanged="Change" /></form>

Show example »

ASP.NET SelectedDates Property

  Complete Calendar Control Reference

Definition and Usage

The SelectedDates property is used to get or set the selected dates from a calendar.

Example

The following example outputs the selected dates when a date is selected:

<script language="VB" runat="server">Sub Change(obj As Object, e As EventArgs)  Dim i As Integer  For i = 0 To Cal1.SelectedDates.Count - 1    Response.Write(Cal1.SelectedDates(i).ToShortDateString())    Response.Write("<br />")  Next iEnd Sub</script>

<form runat="server"><asp:Calendar id="cal1" runat="server"SelectionMode="DayWeekMonth"OnSelectionChanged="Change" /></form>

Show example »

ASP.NET SelectedDayStyle Property

  Complete Calendar Control Reference

Page 95: ASP

Definition and Usage

The SelectedDayStyle property is used to set or return the style of the selected days in the calendar.

Syntax

<asp:Calendar runat="server"><SelectedDayStyle style="value" /></asp:Calendar>

or

<asp:Calendar runat="server" SelectedDayStyle-style="value" />

Attribute Description

style Specifies the style to set. See the Style Control to see the possible styles and their values

value Specifies the value of the specified style

Example 1

The following example shows one way to set the SelectedDayStyle in a calendar:

<form runat="server"><asp:Calendar id="cal1" runat="server"><SelectedDayStyle ForeColor="#FF0000" /></asp:Calendar></form>

Show example »

ASP.NET SelectionMode Property

  Complete Calendar Control Reference

Definition and Usage

The SelectionMode property is used to get or set how a user is allowed to select dates.

Syntax

<asp:Calendar SelectionMode="mode" runat="server" />

Attribute Description

mode Specifies how a users is allowed to select dates.

Possible values:

None

Day

DayWeek

Page 96: ASP

DayWeekMonth

Example

The following example sets the SelectionMode of a calendar:

<form runat="server"><asp:Calendar id="cal1" runat="server"SelectionMode="DayWeekMonth" /></form>

Show example »

ASP.NET SelectMonthText Property

  Complete Calendar Control Reference

Definition and Usage

The SelectMonthText property is used to specify the text for selecting an entire month in a calendar.

Note: This property only works when the SelectionMode property is set to DayWeekMonth.

Syntax

<asp:Calendar SelectMonthText="string" runat="server" />

Attribute Description

string Specifies the text displayed for selecting an entire month in a calendar. The default value is ">>"

Example

Page 97: ASP

The following example shows a calendar with the SelectMonthText set to "->":

<form runat="server"><asp:Calendar id="cal1" runat="server"SelectMonthText="->" SelectionMode="DayWeekMonth" /></form>

Show example »

ASP.NET SelectorStyle Property

  Complete Calendar Control Reference

Definition and Usage

The SelectorStyle property is used to set or return the style week and month selectors.

Syntax

<asp:Calendar runat="server"><SelectorStyle style="value" /></asp:Calendar>

or

<asp:Calendar runat="server" SelectorStyle-style="value" />

Attribute Description

style Specifies the style to set. See the Style Control to see the possible styles and their values

value Specifies the value of the specified style

Example 1

The following example shows one way to set the SelectorStyle in a calendar:

<form runat="server"><asp:Calendar id="cal1" runat="server"><SelectorStyle ForeColor="#FF0000" /></asp:Calendar></form>

Show example »

ASP.NET SelectWeekText Property

  Complete Calendar Control Reference

Page 98: ASP

Definition and Usage

The SelectWeekText property is used to specify the text for selecting an entire week in a calendar.

Note: This property only works when the SelectionMode property is set to DayWeek or DayWeekMonth.

Syntax

<asp:Calendar SelectWeekText="string" runat="server" />

Attribute Description

string Specifies the text displayed for selecting an entire week in a calendar. The default value is ">>"

Example

The following example shows a calendar with the SelectWeekText set to "->":

<form runat="server"><asp:Calendar id="cal1" runat="server"SelectWeekText="->" SelectionMode="DayWeek" /></form>

Show example »

ASP.NET ShowDayHeader Property

  Complete Calendar Control Reference

Definition and Usage

The ShowDayHeader property is used to specify whether or not to display the names of the weekdays in the calendar.

By default this property is set as TRUE and the weekday names are displayed. To remove the weekday names the property must be set as FALSE.

Syntax

<asp:Calendar ShowDayHeader="TRUE|FALSE" runat="server" />

Example

The following example sets the ShowDayHeader as FALSE:

<form runat="server"><asp:Calendar id="cal1" runat="server"ShowDayHeader="FALSE" /></form>

Show example »

Page 99: ASP

ASP.NET ShowGridLines Property

  Complete Calendar Control Reference

Definition and Usage

The ShowGridLines property is used to specify whether or not to display borders between the days in the calendar.

By default this property is set as FALSE and the grid lines are not displayed. To show the grid lines the property must be set as TRUE.

Syntax

<asp:Calendar ShowGridLines="TRUE|FALSE" runat="server" />

Example

The following example sets the ShowGridLines as TRUE:

<form runat="server"><asp:Calendar id="cal1" runat="server"ShowGridLines="TRUE" /></form>

Show example »

ASP.NET ShowNextPrevMonth Property

  Complete Calendar Control Reference

Definition and Usage

The ShowNextPrevMonth property is used to specify whether or not to display the next and previous month links in the calendar.

By default this property is set as TRUE and the next and previous month links are displayed. To remove the links the property must be set as FALSE.

Syntax

<asp:Calendar ShowNextPrevMonth="TRUE|FALSE" runat="server" />

Example

The following example sets the ShowNextPrevMonth as FALSE:

<form runat="server"><asp:Calendar id="cal1" runat="server"ShowNextPrevMonth="FALSE" /></form>

Page 100: ASP

Show example »

SP.NET ShowTitle Property

  Complete Calendar Control Reference

Definition and Usage

The ShowTitle property is used to specify whether or not to display the title in the calendar.

By default this property is set as TRUE and the calendar title are displayed. To remove the title the property must be set as FALSE.

Note: Hiding the title hides the name of the month and the next and previous month links

Syntax

<asp:Calendar ShowTitle="TRUE|FALSE" runat="server" />

Example

The following example sets the ShowTitle as FALSE:

<form runat="server"><asp:Calendar id="cal1" runat="server"ShowTitle="FALSE" /></form>

Show example »

ASP.NET TitleFormat Property

  Complete Calendar Control Reference

Definition and Usage

The TitleFormat property is used to get or set how the title of a calendar is displayed.

Syntax

<asp:Calendar TitleFormat="mode" runat="server" />

Attribute Description

mode Specifies how the calendar title is shown

Possible values:

Page 101: ASP

Month

MonthYear (Default)

Example

The following example sets the TitleFormat to display month:

<form runat="server"><asp:Calendar id="cal1" runat="server"TitleFormat="Month" /></form>

Show example »

ASP.NET TitleStyle Property

  Complete Calendar Control Reference

Definition and Usage

The TitleStyle property is used to set or return the style of the title of a calendar.

Syntax

<asp:Calendar runat="server"><TitleStyle style="value" /></asp:Calendar>

or

<asp:Calendar runat="server" TitleStyle-style="value" />

Attribute Description

style Specifies the style to set. See the Style Control to see the possible styles and their values

value Specifies the value of the specified style

Example 1

The following example shows one way to set the TitleStyle in a calendar:

<form runat="server"><asp:Calendar id="cal1" runat="server"><TitleStyle ForeColor="#FF0000" /></asp:Calendar></form>

Show example »

Page 102: ASP

ASP.NET TodayDayStyle Property

  Complete Calendar Control Reference

Definition and Usage

The TodayDayStyle property is used to set or return the style of the current date in a calendar.

Syntax

<asp:Calendar runat="server"><TodayDayStyle style="value" /></asp:Calendar>

or

<asp:Calendar runat="server" TodayDayStyle-style="value" />

Attribute Description

style Specifies the style to set. See the Style Control to see the possible styles and their values

value Specifies the value of the specified style

Example 1

The following example shows one way to set the TodayDayStyle in a calendar:

<form runat="server"><asp:Calendar id="cal1" runat="server"><TodayDayStyle ForeColor="#FF0000" /></asp:Calendar></form>

Show example »

ASP.NET TodaysDate Property

  Complete Calendar Control Reference

Definition and Usage

The TodaysDate property is used to get or set the current date from a calendar.

If this property is not set, this date will be the date on the server.

Example

Page 103: ASP

The following example shows a outputs today's date:

<script language="VB" runat="server">Sub Page_Load  Response.Write("Today is: ")  Response.Write(cal1.TodaysDate.ToShortDateString())End Sub</script>

<form runat="server"><asp:Calendar id="cal1" runat="server" /></form>

Show example »

ASP.NET VisibleDate Property

  Complete Calendar Control Reference

Definition and Usage

The VisibleDate property is used to get or set the date that specifies the month to display in the calendar.

Example

The following example sets the VisibleDate to 01-Oct-07:

<script runat="server">Sub Page_Load  cal1.VisibleDate = DateValue("01-Oct-07")End Sub</script>

<form runat="server">  <asp:Calendar id="cal1" runat="server" /></form>

Show example »

ASP.NET WeekendDayStyle Property

  Complete Calendar Control Reference

Definition and Usage

The WeekendDayStyle property is used to set or return the style of the weekends in a calendar.

Page 104: ASP

Syntax

<asp:Calendar runat="server"><WeekendDayStyle style="value" /></asp:Calendar>

or

<asp:Calendar runat="server" WeekendDayStyle-style="value" />

Attribute Description

style Specifies the style to set. See the Style Control to see the possible styles and their values

value Specifies the value of the specified style

Example 1

The following example shows one way to set the WeekendDayStyle in a calendar:

<form runat="server"><asp:Calendar id="cal1" runat="server"><WeekendDayStyle ForeColor="#FF0000" /></asp:Calendar></form>

Show example »

Page 105: ASP

Definition and Usage

The CalendarDay control represents a day in a calendar control.

Properties

Property Description .NET

Date The date variable of the date 1.0

DayNumberText The day number(string) of a date 1.0

IsOtherMonth Specifies if the date in another month than the one displayed in the calendar 1.0

IsSelectable Specifies if the date is selectable 1.0

IsSelected Specifies if the date is selected 1.0

IsToday Specifies if the date is today's date 1.0

IsWeekend Specifies if the date is Saturday or Sunday 1.0

ASP.NET Date Property

  Complete CalendarDay Control Reference

Definition and Usage

The Date property is used to get a date variable representing the date.

Example

The following example shows how to get the Date from a selected day in a calendar:

<script runat="server">Sub DaySelect(obj As Object, e As DayRenderEventArgs)  If e.Day.IsSelected Then  Label1.Text = e.Day.Date  End IfEnd Sub</script>

<form runat="server"><asp:Calendar id="cal1" runat="server"OnDayRender="DaySelect" />The selected date is:<asp:Label id="Label1" runat="server"/></form>

Show example »

ASP.NET DayNumberText Property

  Complete CalendarDay Control Reference

Page 106: ASP

Definition and Usage

The DayNumberText property is used to get a string representing the day number of a date.

Example

The following example shows how to get the DayNumberText from a selected day in a calendar:

<script runat="server">Sub DaySelect(obj As Object, e As DayRenderEventArgs)  If e.Day.IsSelected Then  Label1.Text = e.Day.DayNumberText  End IfEnd Sub</script>

<form runat="server"><asp:Calendar id="cal1" runat="server"OnDayRender="DaySelect" />The selected date is:<asp:Label id="Label1" runat="server"/></form>

Show example »

ASP.NET IsOtherMonth Property

  Complete CalendarDay Control Reference

Definition and Usage

The IsOtherMonth property is used to get whether or not the date is in the month displayed by the calendar.

This property returns "FALSE" if the date is the displayed month.

Example

The following example shows if the selected day is in the current month or not:

<script runat="server">Sub DaySelect(obj As Object, e As DayRenderEventArgs)  If e.Day.IsSelected Then    If e.Day.IsOtherMonth = "TRUE" Then      Label1.Text = "NO"    Else      Label1.Text = "YES"    End If  End IfEnd Subv </script>

<form runat="server">  <asp:Calendar id="cal1" runat="server"  OnDayRender="DaySelect"/>

Page 107: ASP

  The selected date is in the current month:  <asp:Label id="Label1" runat="server"/></form>

Show example »

ASP.NET IsSelectable Property

  Complete CalendarDay Control Reference

Definition and Usage

The IsSelectable property is used to get or set whether or not a date is selectable.

This property returns "TRUE" if the date is selectable.

Example

The following example shows a calendar where the weekends are not selectable:

<script runat="server">Sub DaySelect(obj As Object, e As DayRenderEventArgs)  If e.Day.IsWeekend Then    e.Day.IsSelectable = False  End IfEnd Sub</script>

<form runat="server">  <form runat="server">  The weekends are not selectable  <asp:Calendar id="cal1" runat="server"  OnDayRender="DaySelect" /></form>

Show example »

ASP.NET IsSelected Property

  Complete CalendarDay Control Reference

Definition and Usage

The IsSelected property is used to get whether or not a date is selected in a calendar control.

This property returns "TRUE" if the date is selected.

Page 108: ASP

Example

The following example shows if the selected day is in the current month or not:

<script runat="server">Sub DaySelect(obj As Object, e As DayRenderEventArgs)  If e.Day.IsSelected Then    If e.Day.IsOtherMonth = "TRUE" Then      Label1.Text = "NO"    Else      Label1.Text = "YES"    End If  End IfEnd Sub</script>

<form runat="server">  <asp:Calendar id="cal1" runat="server"  OnDayRender="DaySelect"/>  The selected date is in the current month:  <asp:Label id="Label1" runat="server"/></form>

Show example »

ASP.NET IsToday Property

  Complete CalendarDay Control Reference

Definition and Usage

The IsToday property is used to get whether or not the date is the current date.

This property returns "TRUE" if the date is the current date.

Example

The following example shows if the selected day is the current date or not:

<script runat="server">Sub DaySelect(obj As Object, e As DayRenderEventArgs)  If e.Day.IsSelected Then    If e.Day.IsToday = "TRUE" Then      Label1.Text = "YES"    Else      Label1.Text = "NO"    End If  End IfEnd Sub</script>

<form runat="server">  <asp:Calendar id="cal1" runat="server"  OnDayRender="DaySelect" />  The selected date is in the current month:  <asp:Label id="Label1" runat="server"/></form>

Page 109: ASP

Show example »

ASP.NET IsWeekend Property

  Complete CalendarDay Control Reference

Definition and Usage

The IsWeekend property is used to get whether or not the date is a Saturday or Sunday.

This property returns "TRUE" if the date is in a weekend.

Example

The following example shows if the selected day is in a weekend or not:

<script runat="server">Sub DaySelect(obj As Object, e As DayRenderEventArgs)  If e.Day.IsSelected Then    If e.Day.IsWeekend = "TRUE" Then      Label1.Text = "YES"    Else      Label1.Text = "NO"    End If  End IfEnd Sub</script>

<form runat="server">  <asp:Calendar id="cal1" runat="server"  OnDayRender="DaySelect"/>  The selected date is in a weekend:  <asp:Label id="Label1" runat="server"/></form>

Show example »

Page 110: ASP

ASP.NET CheckBox Control

  Web Server Controls

Definition and Usage

The CheckBox control is used to display a check box.

Properties

Property Description .NET

AutoPostBack Specifies whether the form should be posted immediately after the Checked property has changed or not. Default is false

1.0

CausesValidation Specifies if a page is validated when a Button control is clicked 2.0

Checked Specifies whether the check box is checked or not 1.0

InputAttributes Attribute names and values used for the Input element for the CheckBox control 2.0

LabelAttributes Attribute names and values used for the Label element for the CheckBox control 2.0

runat Specifies that the control is a server control.  Must be set to "server" 1.0

Text The text next to the check box 1.0

TextAlign On which side of the check box the text should appear (right or left) 1.0

ValidationGroup Group of controls for which the Checkbox control causes validation when it posts back to the server

2.0

OnCheckedChanged The name of the function to be executed when the Checked property has changed