Program 2: GUI Window Controls
Learning Objectives for Program 2
After completion of Program 2, you should have demonstrated the use of
- At least 15 different .NET Controls in a Windows Form
- Logical Tab Order to navigate the controls
- Access Keys to provide short-cuts and keyboard accessibility
- Basic alignment and layout for designing user interfaces
Assignment
Create a new C# Windows Application using form(s) that could serve as an online course registration system for the university that allows students to register for courses over the computer.
You may assume a client-server architecture where your Windows client application connects to the university's server containing the registration database.
Use at least 15 different types of Windows controls from the Toolbox. The design is up to you, but realize that part of your grade is based on the sophistication of your design. See the screen snapshot below for one idea of how this application might be designed.
Create a logical tab order and provide access key support for the buttons and controls to promote accessibility.
Note: this is a non-functional prototype to demonstrate the look and feel of the client interface. You do not need to do anything with the data entered nor error checking for valid input.

Submission Instructions
- The programming assignment is due in one week, at the start of Lab
- Print out a screen capture (use Alt-PrintScreen and paste into Word) of your online registration system to turn in.
- Annotate your screen capture with examples of the different types of Windows controls you used.
- Be sure to number the different types of controls and explain where the non-obvious controls were used. For example
- Label
- TextBox
- Picture Box for logo
- List Box for Course Number
and so on
- Write your name, your cs446 account number, and total completion time on your screen capture printout.
- The project will be checked online so be sure your solution is stored in your cs446 account in folder
U:\Programs\nnProgram2 where nn is your student account number
Grading Criteria
50 points maximum
The assignment will be scored using the following criteria:
- 20 points - Basic GUI Components
- At least 15 different types of controls were used in the interface (1 point each)
- Your annotation and numbering of the controls on the printout is clear and easy to follow (5)
- 20 points - Design, Placement, and Layout of controls
- The controls included in the design of the online registration form appear reasonably complete (5)
- Your design of the GUI interface demonstrates originality and creativity (5)
- The controls are placed and arranged to promote usability (10)
- All user input widgets controls are clearly labeled
- All controls are sized appropriately for the expected input data
- All controls are aligned vertically and horizontally to reduce complexity
- Grouping is used to reduce complexity
- Use Web resources (e.g. MSDN's Guidelines for Common Controls)
and your textbook for tips on design, alignment, and layout.
- 5 points - Tab order for all controls is appropriate
- 5 points - Access Keys provided for all buttons
- Use the Alt key to see the underlined access keys