c# introduction isys 350. visual studio 2012 demo start page: new project/ open project/recent...
TRANSCRIPT
C# Introduction
ISYS 350
Visual Studio 2012 Demo• Start page: New project/ Open project/Recent projects• Starting project:
• File/New Project/– C# – Windows
» Windows form application– Project name/Project folder
• Project windows:– Form design view/Form code view– Solution Explorer
• View/Solution Explorer
– ToolBox– Property Window
• Properties and Events
– Server Explorer– Project/Add New Item– Property window example
Introduction to C#
• Event-driven programming– The interface for a C# program consists of one
or more forms, containing one or more controls (screen objects).
– Form and controls have events that can respond to. Typical events include clicking a mouse button, type a character on the keyboard, changing a value, etc.
– Event procedure
Form
• Properties:– Name, FormBorderStyle, Text, BackColor,
BackImage, Opacity
• Events:– Load, FormClosing, FormClosed– GotFocus, LostFocus– MouseHover, Click, DoubleCLick
Common Controls
• TextBox• Label• Button• CheckBox• RadioButton• ListBox• ComboBox• PictureBox
Text Box• Properties:
– BorderStyle, CauseValidation, Enabled, Locked, Multiline, PasswordChar, ReadOnly, ScrollBar, TabIndex, Text, Visible, WordWrap, etc.
• Properties can be set at the design time or at the run time using code.
• To refer to a property: – ControlName.PropertyName– Ex. TextBox1.Text– Note: The Text property is a string data type and
automatically inherits the properties and methods of the string data type.
Typical C# Programming Tasks
• Creating the GUI elements that make up the application’s user interface.– Visualize the application.– Make a list of the controls needed.
• Setting the properties of the GUI elements
• Writing procedures that respond to events and perform other operations.
To Add an Event-Procedure
• 1. Select the Properties window
• 2. Click Events button
• 3. Select the event and double-click it.
• Note: Every control has a default event. • Form: Load event
• Button control: Click event
• Textbox: Text Changed event
– To add the default event procedure, simply double-click the control.
Demo
FirstName
LastName
.Control properties
.Event: Click, MouseMove, Form Load, etc.
.Event proceduresFullName: textBox3.Text textBox3.Text = textBox1.Text + " " + textBox2.Text;
Demo: Text alignment (TextBox3.TextAlign=HorizontalAlign.Right)TextBox3.BackColor=Color.Aqua;
Show Full Name
Demo
Num1
Num2
Compute Sum
.Control properties
.Event: Click, MouseMove, Form Load, etc.
.Event proceduresSum: textBox3.Text = (double.Parse(textBox1.Text) + double.Parse(textBox2.Text)).ToString();
In-Class lab: Show the product of Num1 and Num2.
C# Project
• The execution starts from the Main method which is found in the Program.cs file.– Solution/Program.cs– Contain the startup code
• Example: Application.Run(new Form1());
Variable Names
• A variable name identifies a variable• Always choose a meaningful name for variables• Basic naming conventions are:
– the first character must be a letter (upper or lowercase) or an underscore (_)
– the name cannot contain spaces– do not use C# keywords or reserved words
• Variable name is case sensitive
Declare a Variable• C# is a strongly typed language. This means
that when a variable is defined we have to specify what type of data the variable will hold.
• DataType VaraibleName;• A C# statement ends with “;”
string DataType
• string Variables: • Examples:
string empName;string firstName, lastAddress, fullName;
• String concatenation: + • Examples:
fullName = firstName + lastName;MessageBox.Show(“Total is “ + 25.75);
Numeric Data Types
• int, double• Examples:
double mydouble=12.7, rate=0.07;int Counter = 0;
Inputting and Outputting Numeric Values
• Input collected from the keyboard are considered combinations of characters (or string literals) even if they look like a number to you
• A TextBox control reads keyboard input, such as 25.65. However, the TextBox treats it as a string, not a number.
• In C#, use the following Parse methods to convert string to numeric data types
– int.Parse– double.Parse
– Examples:int hoursWorked = int.Parse(hoursWorkedTextBox1.Text); double temperature = double.Parse(temperatureTextBox.Text);
Note: We can also use the .Net’s Convert class methods: ToDouble, ToInt, ToDecimal:Example: hoursWorked = Convert.ToDouble(textBox1.Text);
Explicit Conversion between Numeric Data Types with Cast Operators
• C# allows you to explicitly convert among types, which is known as type casting
• You can use the cast operator which is simply a pair of parentheses with the type keyword in it
int iNum1;double dNum1 = 2.5;iNum1 = (int) dNum1;
Note: We can also use the .Net’s Convert class methods
Implicit conversion and explicit conversion
int iNum1 = 5, iNum2 = 10;double dNum1 = 2.5, dNum2 = 7.0;dNum1 = iNum1 + iNum2; /*C# implicitly convert integer to double*/iNum1 = (int) dNum1 * 2; /*from doulbe to integer requires cast operator*/
Performing Calculations
• Basic calculations such as arithmetic calculation can be performed by math operators
Operator Name of the operator Description
+ Addition Adds two numbers
- Subtraction Subtracts one number from another
* Multiplication Multiplies one number by another
/ Division Divides one number by another and gives the quotient
% Modulus Divides one number by another and gives the remainder
Other calculations: Use Math class’s methods.
Example
int dividend, divisor, quotient, remainder; dividend = int.Parse(textBox1.Text); divisor = int.Parse(textBox2.Text); quotient = dividend / divisor; remainder = dividend % divisor; textBox3.Text = quotient.ToString(); textBox4.Text = remainder.ToString();
Note: The result of an integer divided by an integer is integer. For example, 7/2 is 3, not 3.5.
Lab Exercise• Enter length measured in inches in a textbox; then
show the equivalent length measured in feet and inches.
• For example, 27 inches is equivalent to 2 feet and 3 inches.
Change Machine to Return Smallest Number of Coins
int changes, quarters, dimes, nickles, pennies; changes = int.Parse(textBox1.Text); quarters = changes / 25; dimes = (changes % 25) / 10; nickles = (changes - quarters * 25 - dimes * 10) / 5; pennies = changes - quarters * 25 - dimes * 10 - nickles * 5; textBox2.Text = quarters.ToString(); textBox3.Text = dimes.ToString(); textBox4.Text = nickles.ToString(); textBox5.Text = pennies.ToString();
FV = PV * (1 +Rate) Year
double pv, rate, years, fv; pv = double.Parse(textBox1.Text); rate = double.Parse(textBox2.Text); years = double.Parse(textBox3.Text); fv = pv*Math.Pow(1 + rate, years); textBox4.Text = fv.ToString();
Formatting Numbers with the ToString Method
• The ToString method can optionally format a number to appear in a specific way
• The following table lists the “format strings” and how they work with sample outputs
Format String
Description Number ToString() Result
“N” or “n” Number format 12.3 ToString(“n3”) 12.300
“F” or “f” Fixed-point scientific format 123456.0 ToString("f2") 123456.00
“E” or “e” Exponential scientific format 123456.0 ToString("e3") 1.235e+005
“C” or “c” Currency format -1234567.8 ToString("C") ($1,234,567.80)
“P” or “p” Percentage format .234 ToString("P") 23.40%
Working with DateTime Data
• Declare DateTime variable:– Example: DateTime mydate;
• Convert date entered in a textbox to DateTime data:– Use Convert:
• mydate = Convert.ToDateTime(textBox1.Text);– Use DateTime class Parse method:
• mydate = DateTime.Parse(textBox1.Text);
• DateTime variable’s properties and methods
DateTime Example
DateTime myDate;myDate = DateTime.Parse(textBox1.Text);MessageBox.Show(myDate.ToLongDateString());
Comments
• Line comment: //// my comment
• Block comment: /* …… *//* comment 1
Comment 2…Comment n */