| Why Use Visual Basic .Net? | p. 1 |
| Introduction | p. 2 |
| What do I need? | p. 3 |
| Why upgrade? | p. 3 |
| Is this book for you? | p. 4 |
| How to use this book | p. 5 |
| Don't type! | p. 6 |
| The Visual Basic .Net IDE | p. 9 |
| Introduction | p. 10 |
| Running Visual Basic | p. 10 |
| Project types | p. 11 |
| The Visual Basic .NET IDE | p. 12 |
| The Solution Explorer | p. 14 |
| The Help system | p. 16 |
| The Windows Forms Designer | p. 17 |
| The Toolbox | p. 18 |
| Adding custom controls | p. 19 |
| The Properties window | p. 21 |
| Windows Controls | p. 23 |
| Introduction | p. 24 |
| Adding controls to a window | p. 24 |
| Selecting controls | p. 25 |
| Moving and resizing controls | p. 26 |
| Changing properties | p. 26 |
| Common properties | p. 28 |
| The Label control | p. 29 |
| Properties of the Label control | p. 30 |
| The TextBox control | p. 31 |
| The PictureBox control | p. 32 |
| The CheckBox, RadioButton and GroupBox controls | p. 34 |
| The Button control | p. 36 |
| Creating a good user interface | p. 37 |
| Positioning and grouping | p. 37 |
| Consistency | p. 38 |
| Colours and font size | p. 38 |
| Images | p. 39 |
| Making choices | p. 40 |
| Windows Applications | p. 41 |
| Introduction | p. 42 |
| Showing holiday pictures | p. 42 |
| Creating a new project | p. 43 |
| Adding the controls | p. 44 |
| Completing the user-interface | p. 45 |
| Handling events | p. 46 |
| The Form Load event handler | p. 47 |
| The Button event handlers | p. 50 |
| A quick way of making event procedures | p. 51 |
| The IntelliSense facility | p. 52 |
| Variables and Operators | p. 55 |
| Introduction | p. 56 |
| Naming rules | p. 56 |
| Naming controls | p. 57 |
| Adding comments | p. 57 |
| Variable types | p. 58 |
| Naming conventions for variables | p. 59 |
| Naming conventions | p. 59 |
| Choosing meaningful names | p. 60 |
| Choosing consistent names | p. 60 |
| Declaring variables | p. 61 |
| Option Explicit statement | p. 63 |
| Option Strict statement | p. 64 |
| Declaring constants | p. 65 |
| The Boolean data type | p. 65 |
| Data types representing integers | p. 65 |
| Data types representing floating point numbers | p. 66 |
| The Date data type | p. 67 |
| The Object data type | p. 67 |
| The String data type | p. 67 |
| The Char data type | p. 68 |
| The range of data types | p. 68 |
| Converting between data types | p. 69 |
| Arithmetic operators | p. 70 |
| Assignment operators | p. 71 |
| Arrays | p. 72 |
| Declaring arrays | p. 72 |
| Changing array dimensions | p. 73 |
| Structures | p. 73 |
| Controlling Program Flow | p. 75 |
| Introduction | p. 76 |
| The If.. Then statement | p. 76 |
| The If.. Then.. Else statement | p. 78 |
| Using the Select Case statement | p. 79 |
| The comparison operators | p. 81 |
| Looping | p. 81 |
| The For..Next statement | p. 82 |
| Handling errors | p. 84 |
| The On Error Statement | p. 84 |
| The For Each..Next statement | p. 86 |
| The While statement | p. 86 |
| The Do..Loop statement | p. 88 |
| Functions and Procedures | p. 91 |
| Introduction | p. 92 |
| The Sub statement | p. 92 |
| The attributeList options | p. 93 |
| The argumentList options | p. 94 |
| The Password application | p. 94 |
| Creating a procedure | p. 98 |
| Passing parameters | p. 100 |
| Creating functions | p. 103 |
| Call by reference and call by value | p. 104 |
| Using a start-up procedure | p. 107 |
| Classes and Objects | p. 109 |
| Introduction | p. 110 |
| What is object orientation? | p. 110 |
| What are classes and objects? | p. 112 |
| Creating and using classes and objects | p. 113 |
| The clsBook class | p. 114 |
| The attributes | p. 115 |
| Referencing the attributes | p. 116 |
| ReadOnly and WriteOnly properties | p. 117 |
| The shtLoanType attribute | p. 118 |
| The onLoan method | p. 119 |
| The borrow method | p. 119 |
| The displayDetails method | p. 120 |
| Creating objects | p. 120 |
| Constructors | p. 123 |
| Method overloading | p. 123 |
| Inheritance | p. 124 |
| Further Windows Controls | p. 127 |
| Introduction | p. 128 |
| The Timer control | p. 128 |
| The ListBox control | p. 129 |
| The ComboBox control | p. 132 |
| The ComboBox application | p. 133 |
| Handling events | p. 134 |
| The MonthCalendar control | p. 135 |
| The DateTimePicker control | p. 137 |
| The TrackBar | p. 138 |
| The RichTextBox control | p. 140 |
| Web Applications | p. 143 |
| Introduction | p. 144 |
| What is ASP.NET | p. 144 |
| Windows and Web applications | p. 145 |
| What do I need to develop Web applications? | p. 146 |
| Creating a Web application | p. 146 |
| Creating the application | p. 148 |
| The supporting code | p. 151 |
| Web Server Controls | p. 153 |
| Introduction | p. 154 |
| Web controls | p. 154 |
| The Button Web controls | p. 154 |
| The Calendar control | p. 155 |
| The CheckBox and CheckBoxList controls | p. 156 |
| The DropDownList control | p. 158 |
| The HyperLink control | p. 158 |
| The Image control | p. 159 |
| The Label control | p. 159 |
| The ListBox control | p. 159 |
| The Panel control | p. 160 |
| The RadioButton and RadioButtonList controls | p. 161 |
| Working with Forms | p. 163 |
| Introduction | p. 164 |
| Adding new forms | p. 164 |
| The startup form | p. 164 |
| Creating Forms | p. 165 |
| Hiding and showing forms | p. 166 |
| Controlling form properties | p. 169 |
| Control the Window position | p. 170 |
| MDI forms | p. 171 |
| Creating an MDI application | p. 172 |
| Creating the menu system | p. 173 |
| Menu event procedures | p. 174 |
| Working with Dialogs | p. 177 |
| Introduction | p. 178 |
| The MessageBox class | p. 178 |
| Which button was pressed? | p. 179 |
| The InputBox function | p. 180 |
| Missing optional parameters | p. 181 |
| Standard Dialogs | p. 181 |
| The ColorDialog control | p. 182 |
| The FontDialog Control | p. 183 |
| The OpenFileDialog control | p. 184 |
| The SaveFileDialog Control | p. 187 |
| The PageSetupDialog Control | p. 188 |
| The PrintDialog Control | p. 189 |
| Mouse and Keyboard Events | p. 191 |
| Introduction | p. 192 |
| Keyboard events | p. 192 |
| Monitoring keyboard events | p. 193 |
| The modifier keys | p. 194 |
| Mouse events | p. 196 |
| MouseDown, MouseUp and MouseMove | p. 196 |
| The MouseEventArgs Class | p. 197 |
| MouseEnter and MouseLeave | p. 200 |
| Dragging and dropping | p. 200 |
| Starting to drag | p. 201 |
| Dropping | p. 202 |
| Databases and SQL | p. 205 |
| Introduction | p. 206 |
| The Book database | p. 206 |
| What is SQL? | p. 207 |
| Reading records | p. 207 |
| The ORDER BY clause | p. 208 |
| The WHERE clause | p. 209 |
| Modifying records | p. 209 |
| Deleting records | p. 210 |
| Adding records | p. 210 |
| One to many | p. 210 |
| The Data form Wizard | p. 213 |
| Introduction | p. 214 |
| What does the Wizard do? | p. 214 |
| The Data Form Wizard | p. 214 |
| Datareader and Dataset | p. 223 |
| Introduction | p. 224 |
| Reading the Book database | p. 224 |
| Connecting to the database | p. 225 |
| SQL statements | p. 226 |
| Error checking | p. 228 |
| The DataSet class | p. 230 |
| Using the DataSet class | p. 230 |
| Connecting to the database | p. 231 |
| Reading from the database | p. 232 |
| Using the DataSet class | p. 232 |
| The completed application | p. 234 |
| Index | p. 237 |
| Table of Contents provided by Publisher. All Rights Reserved. |