CS 233S: Web Application Development II	Name:	
Assignment #3 ASP.NET Web Server Controls & Validation	Date Due:	

In this third assignment, you focus on the variety of custom ASP.NET web server controls available for your programming convenience as well as some of their common properties and methods. The validation controls are special ASP.NET web server controls used for evaluating form input prior to further processing.
Part A: Text Reading	100 points
1.	Read Chapter 3 and 4 in the textbook. Read all of the pages – you are responsible for the knowledge in each section, even if you are not required to complete the coding. Follow the VB or C# directions for:
•	Page 105, Listing 3-2: create the file shown and save as chap3page1.aspx.
•	Page 109, Listing 3-4: modify chap3page1.aspx; add the autopostback and ontextchanged attributes to the existing TextBox1 object event handler and meta tag. Add the Response.Write statements to the server-side code (either inline or behind the page).
•	Page 111, Listing 3-6: modify chap3page1.aspx; add two new ASP button controls named Button2 and Button3. Be sure that the id and text attribute values are both updated (and matching!)
•	Page 112, Listing 3-7: add the Command procedure to the server-side code (either inline or behind the page).
•	Page 113, Listing 3-8: create a new file named chap3page2.aspx
•	Page 115, Listing 3-9: modify chap3page2.aspx; add the ImageButton control shown above the listing to the form on this page and the VB or C# code to the server-side code (either inline or behind the page).
•	Page 117. Listing 3-10: create a new file named chap3page3.aspx 
•	Page 122, Listing 3-12: create a new file named chap3page4.aspx
•	Page 127, Listing 3-14: create a new file named chap3page5.aspx – you will need to add the Northwind.mdf file to the App_Data folder. Use the “Configure Data Source” wizard that demoed in class to select Northwind as the data source, and the CompanyName field from the Customers table as the desired values from a SELECT statement..
•	Page 137. Listing 3-20: create a new file named chap3page6.aspx
•	Page 145, Listing 3-23: create the XML file shown by adding a new item to the App_Data folder
•	Page 146, Listing 3-24: modify chap3page6.aspx; add the AdRotator control to the top of this page. Do not bother typing the “lorem ipsum” paragraph!
•	Page 152, Listing 3-30: modify chap3page6.aspx; add the BulletedList control to the page and a second label control. The id attribute of the label control should be lblCountry (so as not to conflict with the existing Label1 control). Change this in the Click event handler procedure as well, so that instead of:
Label1.Text = “The index of the item you selected…”
			you use
lblCountry.Text = “The index of the item you selected…”
•	Page 166, Listing 3-40:  create a new file named chap3page7.aspx as shown
•	Page 170, Listing 3-41: modify chap3page7.aspx; add the Wizard control within the form but outside of any code for the MultiView control.
•	Page 172, Listing 3-42: modify chap3page7.aspx; add the complete step to the wizard control
•	Page 173, Listing 3-43: modify chap3page7.aspx; add the header attributes to the wizard control
•	Page 176, Listing 3-46: modify chap3page7.aspx; add the form elements within the wizard control
•	Page 177, Listing 3-47: modify chap3page7.aspx; add the activate event handler to the server-side code (either inline or behind the page).
•	Page 177, Listing 3-48: modify chap3page7.aspx; add the additional wizard step shown
•	Page177, Listing 3-49: modify chap3page7.aspx; add the NextButtonClick event handler to the server-side code (either inline or behind the page).
•	Page 189, Listing 4-1: create a new chap4page1.aspx page
•	Page 192, Listing 4-5: modify chap4page1.aspx; update the value of the Text attribute in the RequiredFieldValidator control and add the InitialValue attribute.
•	Page 193, Listing 4-6: modify chap4page1.aspx; add the second RequiredFieldValidator control
•	Page 194, Listing 4-7: modify chap4page1.aspx; add the DropDownList control and a RequiredFieldValidator control. Note that the id of the RequiredFieldValidator cannot be RequiredFieldValidator1.
•	Page 194, Listing 4-8: create a new chap4page2.aspx file as shown.
•	Page 199, Listing 4-12: create a new chap4page3.aspx file as shown
•	Page 202, Listing 4-13: modify chap4page3.aspx; add a second textbox with an id of txtEmail (instead of TextBox2). Make sure that the ControlToValidate property in the RegularExpressionValidator is set to txtEmail as well.
•	Page 203, Listing 4-14: create a new chap4page4.aspx file as shown
•	Page 205, Listing 4-15: modify chap4page4.aspx; add the ValidateNumber procedure to the server-side code (either inline or behind the page)
•	Page 208, Listing 4-17: modify chap4page3.aspx; add only the ValidationSummary control – you do not need to add either textbox.
•	Page 214, Listing 4-26: create a new chap4page5.aspx file as shown
2.	Email or print the code view (including the code behind the page as needed) from:
•	
•	Chap3page1.aspx
•	Chap3page2.aspx
•	Chap3page3.aspx
•	Chap3page4.aspx
•	Chap3page5.aspx
•	Chap3page6.aspx
•	Chap3page7.aspx
•	Chap4page1.aspx
•	Chap4page2.aspx
•	Chap4page3.aspx
•	Chap4page4.aspx
•	Chap4page5.aspx