Bachelor of Information
Technology
WINDOWS PROGRAMMING
Introduction to Programming and
Visual C# 2008
(Week 1)
PowerPoint Slides
by Tengku Hasliza
Learning Objective(s)
1. Explain the process of visual program design and
development
2. Explain the term object-oriented programming
3. Explain the concepts of classes, objects, properties,
methods, and events
4. List and describe the three steps for writing a C# program
5. Describe the various files that make up a C# project
6. Identify the elements in the Visual Studio environment
7. Define design time, run time, and debug time
8. Write, run, save, print, and modify your first C# program
9. Identify syntax errors, run-time errors, and logic errors
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
Learning Outcome(s)
1. Describe the process of visual program design and
development
2. Explain the term object-oriented programming
3. Explain the concepts of classes, objects, properties,
methods, and events
4. Identify the three steps for writing a C# program
5. Describe the various files that make up a C# project
6. Identify the elements in the Visual Studio environment
7. Define design time, run time, and debug time
8. Write, run, save, print, and modify your first C# program
9. Identify syntax errors, run-time errors, and logic errors
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
Writing Windows Applications
Your C# programs will look and
act like standard Windows
programs
Use tools to create:
Labels
Text boxes
Buttons
Radio buttons
Picture box
Check box
Menu Bar
Drop-down list
List box
Group box
Bradley (2009, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
Windows Graphical User Interface (GUI)
Windows GUI defines how elements look and function
Windows are called forms
Elements are called controls
Add controls to your forms using the toolbox
C# projects follow the object-oriented programming
(OOP) technique
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
Programming Languages
Procedural and Object Oriented
Procedural Basic, C, Cobol, Fortran, PL/1, Pascal
Program specifies exact sequence of operations
Object Oriented Programming (OOP) C#, Java,
Visual Basic
Last Updated: 3/7/15
User controls the sequence
User actions cause events to occur which trigger
methods
I-Station Solutions Sdn Bhd
The Object Model
Objects have properties, methods and events
An object is based on a class
Objects (noun or thing)
Properties (adjectives)
Click, KeyPress, Scroll, Close window
Classes (template or blueprint)
Last Updated: 3/7/15
Close, Show, Clear
Events (occurs when user takes action)
Name, Color, Size, Location
Methods (verbs)
Forms, Controls
Contain definition of all available properties, methods and
events
I-Station Solutions Sdn Bhd
OOP Terminology
Object.Property
SalesForm.Text
Object.Method
BillingForm.Show
exitButton.Show
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
Object Model Analogy
Class = automobile
Object = one individual automobile
Object is an instance of the automobile class
Properties = make, model, color, engine, number of doors
Methods = start, speedup, slowdown, stop
Events = arrive, crash
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
Microsofts Visual Studio 2008
.NET 3.5 Framework
Environment that allows objects from different
languages to operate together, standardizes
references to data and objects
.NET languages all compile (translate) to Microsoft
Intermediate Language (MSIL)
MSIL runs in the Common Language Runtime (CLR)
Programming Languages
Visual C#, Visual C++, Visual Basic
C# Versions
Last Updated: 3/7/15
Express Edition, Standard Edition, Professional
Edition, Team System
I-Station Solutions Sdn Bhd
10
Writing C# Programs
The Three-Step Process (Planning)
Planning
Design the user interface
Plan the properties
Plan the C# code
Last Updated: 3/7/15
Sketch screens
Show forms and all controls
Name forms and objects on form
Consult with user
Plan classes and methods
Write pseudocode
I-Station Solutions Sdn Bhd
11
Writing C# Programs
The Three-Step Process (Programming)
Define user interface
Create forms and controls
Set the properties
Name each object and define its attributes
Write the code
Define the actions of the program
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
12
C# Application Files
Solution file
A C# application is called a solution and can consist
of one or more projects
.sln extension
Project file
Describes project and lists files included
.csproj extension
Form files
.cs, .Designer.cs, .resx extensions
The Visual Studio environment creates several more files
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
13
The Visual Studio Environment
Integrated development environment (IDE)
Includes various tools
Last Updated: 3/7/15
Form designer
Editor for entering and modifying C# code
Compiler
Debugger
Object Browser
Help
I-Station Solutions Sdn Bhd
14
Default Environment Settings
Visual Studio 2008 allows selection of default IDE profile
Available with full version of Visual Studio
Choose Visual C# Development Settings
Last Updated: 3/7/15
Text uses the Visual C# settings
Settings can be saved for more than one language
To switch between the settings for languages:
Select Tools/Import and Export Settings
Choose Reset all settings
I-Station Solutions Sdn Bhd
15
The New Project Dialog
Select File/New Project
New Project Dialog Box Opens
Select the Windows Forms
Application template
Select Visual C#
Windows
Enter the Project
Name
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
16
The IDE Main Window
Toolbo
x
Solution
Explorer
Properti
es
window
Main
Document
window
Each window can be moved, resized, closed, or customized
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
17
The Toolbars
Toolbar buttons are shortcuts
Each buttons command is also a menu selection
Select View/Toolbars to display or hide a toolbar
Three commonly used toolbars
Standard
Layout
Text Editor
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
18
Document Window
Use tabs to switch between open documents
Items in Document window
Form Designer
Code Editor
Project Designer
Database Designer
Object Browser
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
19
The Form Designer
Design forms for user interface
Change size of form using sizing handles or selection
border
A new default form is added when a new C# application is
started
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
20
The Solution Explorer and
Properties Windows
Solution Explorer window
Holds filenames for project files
Lists classes referenced
Holds name of solution (.sln) file
Properties Window
Used to set properties for objects in project
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
21
Toolbox
Holds tools to place controls on
form
Tools vary depending on edition
of C#
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
22
Help
Help with specific tasks
Filte
r
Help
Index
Last Updated: 3/7/15
Selected Topic
Help
Contents
Help
Favorites
Help
Search
Index Results
Bradley (2010, Figure)
I-Station Solutions Sdn Bhd
23
Design Time, Run Time, Debug Time
Design Time
Design user interface (forms)
Write code
Run Time
Testing project
Running project
Debug Time
Run-time errors
Pause program execution
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
24
Writing Your First C# Project - 1
Run Visual Studio
Start a New Project
Select File/New/Project
Last Updated: 3/7/15
Visual C# and Windows must be selected for Project types
Select Windows Forms Application for the template
Enter Hello World as the project name
Click the OK button
I-Station Solutions Sdn Bhd
25
Writing Your First C# Project - 2
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
26
Writing Your First C# Project - 3
Set Up Your Environment
Click Window/Reset Window
Layout, Click Yes
Point to toolbox icon
Pushpin icon toggles Auto Hide
feature for toolbox
Optional
Tools/Options
Options dialog box
Startup under Environment
At startup list
Show empty environment
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
27
Writing Your First C# Project - 4
Plan the project
Design the user interface
Plan the properties
Plan the code
(Planning the properties and
code have been done for the
first sample project)
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
28
Writing Your First C# Project - 5
Define the User Interface
Set Up the Form
Drag handle to resize
form
Place Controls on the
Form
Double-click the Label tool
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
29
Writing Your First C# Project - 6
Draw a button on the form
Click the button tool and
draw with the crosshair
pointer
Create a second button
Double-click the Button tool
in the toolbox
Use snap lines to align all three
controls
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
30
Writing Your First C# Project - 7
Controls
Select, Delete, Move or Resize
Select a control
Click on it
Delete a selected control
Select control and press the Delete key
Move a selected control
Point inside control (not on a handle)
and drag to a new location
Point to a resizing handle and drag to
resize
Resize a selected control
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
31
Writing Your First C# Project - 8
Set Properties
Press F4 key if Properties window is not displayed
Click title bar of Properties window to make active
window
Click on control to change its properties
Click Alphabetical button to sort properties
Select Name property
Select AutoSize property
Choose True or False
Select Text property
Last Updated: 3/7/15
Enter Name for Control (used in code)
Change value for display on form
I-Station Solutions Sdn Bhd
32
Writing Your First C# Project - 9
Lock the Controls
When controls are in desired location, lock them in
place
Unlock controls by clicking again on Lock Controls on
the context menu
Right-click on the form
and select Lock
Controls
A button that is selected and
locked
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
33
Writing Your First C# Project - 10
Set Button Properties
button1
Name - displayButton
Text - Display
button2
Name exitButton
Text Exit
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
34
Writing Your First C# Project - 11
Change Properties of the Form
Text property appears in the forms title bar
Set StartPosition property to CenterScreen
Icon indicates that the forms controls are locked
Forms Text property appears in the title bar
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
35
Changing a Forms Name
You must change the name of the forms file and the name
of the class
If you change the filename first, the IDE automatically
changes the name of the class
The reverse is not true
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
36
HelloForm.cs
Name of
the forms
file
File name
Name of
the form
class
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
37
Write Code
C# Events
While a project is running the user can perform
actions, each of which causes an event to occur
C# will execute a method when code has been written
for an event
C# ignores events for which no methods are written
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
38
C# Event Handlers
Write C# code in methods
Each begins with the words private void
Code in method is enclosed in braces { }
C# names the event-handling method as the object name,
an underscore (_) and the name of the event
displayButton_Click
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
39
C# Code Statements
Comment statements
Sometimes called remarks
Ending a statement
Code statements are terminated by a semicolon (;)
Assignment statements
Executing a Method
Methods always have parentheses
Use this keyword to execute method of the current
form
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
40
The Comment Statement
Comments or remarks are for project documentation
Explain purpose of the program
Provide identifying information
Non-executable statements within the code
Automatically colored green by the editor
Single-line comments begin with two slashes
// Display a message to the user.
Multiline comments begin with /* and
/* First line
...
Last line */
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
end with */
41
Ending a Statement
Most C# statements end with a semicolon (;)
A statement can appear on multiple lines
The semicolon determines the end of the statement
Comments and a few other C# statements do not end with
a semicolon
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
42
The Assignment Statement
Assigns a value to a property or variable
Operates from right to left
The value on the right side of the equal sign is
assigned to the property on the left side of the
equal sign
Enclose text (a literal) in quotation marks (" ")
Last Updated: 3/7/15
messageLabel.Text = "Hello
World";
I-Station Solutions Sdn Bhd
43
Ending a Program by Executing a Method
To execute a method of an object, write:
Object.Method();
Methods are always followed by parentheses
Can help distinguish methods from properties
To execute a method of the current form use the this
keyword
this.Close();
this.Close() is used to end a program in the eventhandling method for an Exit button or menu choice
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
44
Code Event-Handling Methods - 1
Double-click the Display button
The Editor window opens
The header line for the method is in place
The insertion point appears inside the opening and closing
braces
private void displayButton_Click(object sender,
EventArgs e)
{
|
}
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
45
Code Event-Handling Methods - 2
Editor
tab
Form Designer tab
Commen
t
statemen
Assignme
t
nt
statement
Execute the
Close
method to
end the
program
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
46
Run the Project - 1
Use one of three
techniques to run
IDE Title bar indicates
program is in run time
Open the Debug
menu / Start
Debugging
Press the Start
Debugging toolbar
button
Press F5, the
keyboard shortcut
Editor and Form Designer locked
tabs
Form for the
running
application
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
47
Run the Project - 2
Click the Display
button
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
Hello World
message appears
in the label
Click the Exit button
to end the project
and return to Design
time
48
Save Your Work
File menu/Save All
Saves the current form, project and solution files
Click Save All toolbar button to quickly save all files
File menu/Close Solution
If file has not been saved since last change, prompt to
save appears
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
49
Open the Project
Three ways to open a project
File menu/Open Project
Choose project from File/Recent Projects menu
Start Page (if available)
Last Updated: 3/7/15
Browse to find .sln file (small 9 as part of files icon)
View/Other Windows/Start Page
I-Station Solutions Sdn Bhd
50
Modify the Project
Modify the project by making changes to the
design (including properties) and/or the code
(including comments)
Double-click on a button to open the editor
Editor will open in corresponding click event
code
Click to
expand Font
list
Properties button
Settings
box
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
51
Print the Code
Print
Open Editor window
File/Print
View Event Handlers
Select a button control
Click Events button (lightning bolt) on Properties
window
Double-click on the event name
Last Updated: 3/7/15
Code Editor window opens inside template for event handler
I-Station Solutions Sdn Bhd
52
Automatically Generated Code
Using Statements
Provide references to classes from the language
library
System.Windows.Forms
Allows program to refer to all Windows controls
Namespace Statement
.NET Framework requires every program component
to have a namespace
Class Statement
A new class can inherit from another class
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
53
Finding and Fixing Errors
Syntax errors
Breaking the rules of the language
Editor finds most, compiler reports remainder
Editor identifies syntax errors with a red squiggly
line
Run-time errors or exceptions
Program halts due to statements that cannot execute
For example, impossible arithmetic operations
Logic errors
Program runs but produces incorrect results
Carefully proof output to make sure it is correct
Computations, text and spacing
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
54
Project Debugging
Program errors are bugs
Editor highlights syntax and run-time errors
Programmer must locate logic errors
C# allows edit-and-continue
Fix error and press F5 or Debug/Continue
Clean Compile
No errors during the compile process
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
55
Modifying an Event Handler -1
Deleting an Event Handler
Select form or control
Click Events button in
Properties window
Select and delete name
of the method
Select the
event
Delete the method
name
Bradley (2010, Figure)
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
56
Modifying an Event Handler - 2
Renaming a Control
Change the name of the control in the design window
Switch to Editor window
Right-click name of event-handling method
Select Refractor/Rename
Enter new name in Rename dialog box
Click Apply in Preview Changes dialog box
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
57
Naming Rules and Conventions for
Objects
Follow C# rules for naming objects, methods and
variables
Good programmers follow naming rules and conventions
Most programming shops have standards that must be
followed
When programmers consistently follow standards,
programs are easier to read and to maintain, by both the
original programmer and by others
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
58
The Naming Rules
Name must begin with a letter or an underscore
Name can contain letters, digits, and underscores
Name cannot include a space, punctuation mark or be a
reserved word
Names are case sensitive
exitbutton, ExitButton and exitButton refer to
three different objects
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
59
The Naming Conventions -1
Follow standard naming conventions
Use camel casing
Begin name with lowercase character
Capitalize each additional word in name
Use meaningful names, indicate purpose of object
Append full name of controls class
Examples
Last Updated: 3/7/15
messageLabel, exitButton, discountRateLabel
I-Station Solutions Sdn Bhd
60
The Naming Conventions - 2
Do not keep C# default names
Exception is labels that never change during
execution
Use pascal casing to name forms and classes
Capitalize first letter of name and first letter of all
other words in name
Examples
Last Updated: 3/7/15
HelloForm, MainForm, AboutForm
I-Station Solutions Sdn Bhd
61
Visual Studio Help
Installing and Running MSDN
Can be run from a hard drive or online
Viewing Help Topics
Help window opens on top of IDE window
Filter by C# and either Express or Professional
Edition
Context-Sensitive Help
Select a C# object (i.e. form or control)
Place insertion point in a word in the editor
Press F1
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
62
References:
Julia Case Bradley, Anita Millspaugh. 2010, Programming
in Visual C# 2008, Mc Graw Hill.
Last
updated: 3/7/15
Last
Updated:
I-Station Solutions Sdn Bhd
63
Key Terms:
Term
Definition
Forms
Windows are called forms
Controls
Elements are called controls
NET 3.5 Framework
Environment that allows objects from different
languages to operate together, standardizes
references to data and objects
Syntax errors
Breaking the rules of the language
Run-time errors or
exceptions
Program halts due to statements that cannot execute
Logic errors
Program runs but produces incorrect results
Carefully proof output to make sure it is correct
Computations, text and spacing
Last Updated: 3/7/15
I-Station Solutions Sdn Bhd
64