asp.net controls

25
1 ASP.NET Controls • ASP includes normal HTML elements • Server-side controls are objects that provide corresponding HTML output. • You can set their properties, call methods and program events on them

Upload: azalia-walton

Post on 30-Dec-2015

43 views

Category:

Documents


0 download

DESCRIPTION

ASP.NET Controls. ASP includes normal HTML elements Server-side controls are objects that provide corresponding HTML output. You can set their properties, call methods and program events on them. Server Controls. Four types of server controls: - PowerPoint PPT Presentation

TRANSCRIPT

1

ASP.NET Controls

• ASP includes normal HTML elements

• Server-side controls are objects that provide corresponding HTML output.

• You can set their properties, call methods and program events on them

2

Server Controls

• Four types of server controls:– HTML server controls: server-based equivalent

for standard HTML elements– Web controls: more object properties and events

+ new types of controls not in HTML– Validation controls: check user inputs– User controls: developer designed controls

• More controls in ASP.NET 2.0

3

HTML Server Controls

• An object interface for standard HTML elements– Generate equivalent interface – Retain their state– Fire events

• Add the attribute “runat=serevr” and an id to the HTML element start tag

4

HTML Server Controls

• Traditional HTML form<html> <body>

<form method="post">

Enter Number of hours: <input type=text > <input type=submit value="convert to seconds">

</form></body></html>

• ASP.NET HTML server controls<HTML><BODY>

<form method="post" runat="server“ >

Enter Number of hours: <input type=text runat="server" id="hours">

<input type=submit value="convert to seconds" runat="server" id="convert">

</form></Body></HTML>

• Run server-control file and see the generated code

5

HTML Server Controls

• Automatically maintain state of controls in the page using the hidden field which is compressed and encrypted code.

• Exists in System.Web.UI.HTMLControls

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

• Two types of events: ServerClick, ServerChange

6

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

7

HTMLServer Control Properties

• Similar properties as HTML attributes:– Input controls: value , type– Img: src, width, height, ..

• HTML Container Controls: InnerText, InnerHtml

• All HTML controls have:– Disabled, visible, TagName, Style, Page

8

Web Controls

• Provide rich user interface (mapped to more than one HTML element)

• Provide more properties, events and methods than HTML tags

• Detect browser type and adjust output automatically• Server controls automatically maintain any client-

entered values between round trips to the server. This control state is not stored on the server (it is instead stored within an <input type="hidden"> form field that is round-tripped between requests).

9

Web Server Control Description

Button Displays a push button

CheckBox Displays a check box

CheckBoxList Creates a multi-selection check box group

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 (span)

LinkButton Creates a hyperlink button

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

Panel Provides a container for other controls

RadioButton Creates a radio button

RadioButtonList Creates a group of radio buttons

Table Creates a table

TableCell Creates a table cell

TableRow Creates a table row

TextBox Creates a text box

10

Web Controls

• Tags start with prefix “asp:” then class name

• Attribute runat=server

• ASP.NET add “name” attribute to controls to track them.

• Object properties are mapped to attributes<asp:TextBox id=“T1” runat=“server”> </asp:TextBox>

<input type=text name=“T1” id=“T1” />

• Defined in System.Web.UI.WebControls

11

Web Controls• All web controls have:

– BackColor, BorderColor and ForeColor– BorderWidth, BorderStyle– Font– Height, Width– TabIndex, AccessKey– Enabled, visible, EnableViewState

• TextBox control properties:– TextMode: SingleeLine, MultipleLine, Password– MaxLength: maximum number of characters accepted– Columns: width of the control– Rows: display height of the control

12

Web Controls

• Button / label: – text

• CheckBox / RadioButton : – Text: (label next to the control)– TextAlign: text alignment relative to control– Checked

• Panel: Group a number of controls– BackImageUrl

13

Web Controls

• Table: – Properties: BackImageUrl, CellPadding, Cellspacing,

GridLines

– Rows a collection of TableRow objects

• TableRow– Cells: a collection of TableCell objects

• TableCell– ColumnSpan/RowSpan

– HorizontalAlign / VerticalAlign

– text

14

List Controls

• ListBox, DropDownList, CheckBoxList, RadioButtonList

• Items: Collection of “ListItem” objects, which has:– text : Displayed word

– value : hidden value in HTML code

– Selected: boolean

• Properties: SelectedIndex, SelectedItem• Multiple selection for ListBox, set “SelectionMode” property

• RadioButtonList/ CheckBoxList properties:– RepeatColumns, RepeatDirection, RepeateLayout, TextAlign

15

Web Control Events

• Events types: Click, TextChange, CheckChanged, SelectedIndexChanged

• Change events have their autoPostBack property false by default.

• ASP.NET adds a Java Script code that handles the postback to the server when a server side control event has occurred

• Two hidden fields (id of triggered control, and additional information)

16

Page Lifecycle

• When the user changes a control that has autopostback set to true:

1. Java script is invoked and the page is resubmitted

2. ASP.NET recreates page object from .aspx file

3. ASP.NET retrieves state information from hidden fields and updates controls

4. Execute Page_load event handler

5. Execute appropriate event handlers

6. Execute page_unload event handler and render page

7. Send page to client

17

Page Processing Steps

Client

ASP.NET creates page objects from aspx code

Web page request

ASP.NET runs Page.load event handler

Final page is renderedHTML output returned

Page postbackASP.NET creates page objects

from aspx code

ASP.NET runs Page.load event handler

Final page is rendered

ASP.Net runs any other Triggered event handler

HTML output returned

18

Validation Controls• This set of controls provides Rapid

Application Development (RAD) features for automatically checking the specified validity of user inputs.

• Available in the System.Web.UI.WebControls namespace.

• Types of user errors– Forget to fill an important field– Submitting the wrong type of data– Submitting the data in a wrong format

19

Validation Controls

• HTML does not facilitate validation of user input

• ASP.NET provide validation controls that checks the user input before submitting the form

• Utilizes client-side DHTML to provide fast response

20

Validation Controls

• RequiredFieldValidator

• RangeValidator

• CompareValidator

• RegularExpressionvalidator

• CustomValidator

• ValidationSummary

21

Validation Controls

• To activate the validation controls before the form is submitted, set button property “Causes Validation” to true

• Each validation control is bound to one input control.

• An input control may have multiple validation controls

22

Validation Controls

• Common properties– ControlToValidate– ErrorMessage: text to display if validation fails– ForeColor– Display: add message dynamic or static– IsValid: true or false depending on the validation

result– Enabled– EnableClientSideScript

23

Validation Controls

• RequiredFieldValidator– initialValue

• RangeValidator– MaximumValue, MinimumValue, Type

• CompareValidator– ControlToCompare, Operator,Type, ValueToCompare

• RegularExpressionvalidator– ValidationExpression

24

Regular Expression Characters

* 0 or more occurrence of previous character or expression

+ 1 or more occurrence of previous character or expression

() Groups a sub-expression

[] Matches on character in a range

| Either of two options

[^] Matches a character that is not in the given range

\s Whitespace character (tab or space)

\S Any non whitespace chacters

\d Any digit character

\D Any character that is not a digit

\w Any “word” character (letter, number, underscore)

25

Validation Summary

• Displays all the errors that happened in the page in one area

• Message in the errorMessage properties will be displayed in the summary

• Display mode: list or bullet list or paragraph

• Other properties– HeaderText– ShowMessageBox / ShowSummary