CONTENTS
Part I: IDE
Chapter 1: Introduction To The IDE
Introducing the IDE
Different IDE Appearances
IDE Configurations
Projects and Solutions
Starting the IDE
Creating a Project
Saving a Project
Summary
Chapter 2: Menus, Toolbars, and Windows
IDE Tools
Menus
Toolbars
Secondary Windows
Summary
Chapter 3: Windows Forms Designer
Introducing Windows Forms Designer
Setting Designer Options
Adding Controls
Selecting Controls
Copying Controls
Moving and Sizing Controls
Arranging Controls
Setting Properties
Adding Code to Controls
Summary
Chapter 4: WPF Designer
Introducing WPF Designer
Editor Weaknesses
Recognizing Designer Windows
Adding Controls
Selecting Controls
Moving and Sizing Controls
Setting Properties
Setting Group Properties
Adding Code to Controls
Summary
Chapter 5: Visual Basic Code Editor
Editing Code
Margin Icons
Outlining
Tooltips
IntelliSense
Code Coloring and Highlighting
Code Snippets
Architectural Tools
The Code Editor at Run Time
Summary
Chapter 6: Debugging
Debugging and Testing
The Debug Menu
The Debug ⇒ Windows Submenu
The Breakpoints Window
The Command and Immediate Windows
Summary
Part II: Getting Started
Chapter 7: Selecting Windows Forms Controls
Controls
Controls Overview
Choosing Controls
Third-Party Controls
Summary
Chapter 8: Using Windows Forms Controls
Using Controls and Components
Controls and Components
Creating Controls
Properties
Methods
Events
Summary
Chapter 9: Windows Forms
Using Forms
Transparency
About, Splash, and Login Forms
Mouse Cursors
Icons
Properties Adopted by Child Controls
Property Reset Methods
Overriding WndProc
MRU Lists
Dialog Boxes
Wizards
Summary
Chapter 10: Selecting WPF Controls
WPF Controls and Code
Controls Overview
Containing and Arranging Controls
Making Selections
Entering Data
Displaying Data
Providing Feedback
Initiating Action
Presenting Graphics and Media
Providing Navigation
Managing Documents
Digital Ink
Summary
Chapter 11: Using Wpf Controls
WPF Controls
WPF Concepts
WPF in the IDE
XAML Features
Procedural WPF
Documents
Summary
Chapter 12: WPF Windows
Using WPF Windows
Window Applications
Page Applications
Summary
Chapter 13: Program and Module Structure
Solutions and Projects
Hidden Files
Code File Structure
Typographic Code Elements
Summary
Chapter 14: Data Types, Variables, and Constants
Variables
Data Types
Type Characters
Data Type Conversion
Variable Declarations
Initializing Collections
Option Explicit and Option Strict
Scope
Parameter Declarations
Property Procedures
Enumerated Data Types
Anonymous Types
Nullable Types
Constants
Delegates
Naming Conventions
Summary
Chapter 15: Operators
Understanding Operators
Arithmetic Operators
Concatenation Operators
Comparison Operators
Logical Operators
Bitwise Operators
Operator Precedence
Assignment Operators
The StringBuilder Class
Date and TimeSpan Operations
Operator Overloading
Summary
Chapter 16: Subroutines and Functions
Managing Code
Subroutines
Functions
Property Procedures
Extension Methods
Lambda Functions
Relaxed Delegates
Asynchronous Methods
Summary
Chapter 17: Program Control Statements
Controlling Programs
Decision Statements
Looping Statements
Summary
Chapter 18: Error Handling
The Struggle for Perfection
Bugs versus Unplanned Conditions
Structured Error Handling
Debugging
Summary
Chapter 19: Database Controls and Objects
Data Sources
Automatically Connecting to Data
Automatically Created Objects
Other Data Objects
Data Overview
Connection Objects
Transaction Objects
Data Adapters
Command Objects
DataView
DataRowView
Simple Data Binding
CurrencyManager
Complex Data Binding
Summary
Chapter 20: LINQ
The Many Faces of LINQ
Introduction to LINQ
Basic LINQ Query Syntax
Advanced LINQ Query Syntax
LINQ Functions
LINQ Extension Methods
LINQ to Objects
LINQ to XML
LINQ into XML
LINQ out of XML
LINQ to ADO.NET
PLINQ
Summary
Chapter 21: Metro-Style Applications
Building Metro-Style Applications
Starting a New Project
Special Image Files
Building MetroBones
Testing
Summary
Part III: Object-Oriented Programming
Chapter 22: OOP Concepts
Introducing OOP
Classes
Encapsulation
Inheritance
Polymorphism
Method Overloading
Extension Methods
Summary
Chapter 23: Classes and Structures
Packaging Data
Classes
Structures
Class Instantiation Details
Structure Instantiation Details
Garbage Collection
Constants, Properties, and Methods
Events
Summary
Chapter 24: Namespaces
Handling Name Conflicts
The Imports Statement
The Root Namespace
Making Namespaces
Classes, Structures, and Modules
Resolving Namespaces
Summary
Chapter 25: Collection Classes
Grouping Data
What Is a Collection?
Arrays
Collections
Dictionaries
CollectionsUtil
Stacks and Queues
Generics
Collection Initializers
Iterators
Summary
Chapter 26: Generics
Class Creators
Advantages of Generics
Defining Generics
Instantiating Generic Classes
Generic Collection Classes
Generic Methods
Generics and Extension Methods
Summary
Part IV: Interacting With The Environment
Chapter 27: Printing
Printing Concepts
Basic Printing
Drawing Basics
A Booklet Example
Summary
Chapter 28: Configuration and Resources
The Need for Configuration
My
Environment
Registry
Configuration Files
Resource Files
Application
Summary
Chapter 29: Streams
Stream Concepts
Stream
FileStream
MemoryStream
BinaryReader and BinaryWriter
TextReader and TextWriter
StringReader and StringWriter
StreamReader and StreamWriter
OpenText, CreateText, and AppendText
Custom Stream Classes
Summary
Chapter 30: Filesystem Objects
Programming Approaches
Permissions
Visual Basic Methods
.NET Framework Classes
My.Computer.FileSystem
My.Computer.FileSystem.SpecialDirectories
Summary
Appendices
Appendix A: Useful Control Properties, Methods, and Events
Appendix B: Variable Declarations and Data Types
Appendix C: Operators
Appendix D: Subroutine and Function Declarations
Appendix E: Control Statements
Appendix F: Error Handling
Appendix G: Windows Forms Controls and Components
Appendix H: WPF Controls
Appendix I: Visual Basic Power Packs
Appendix J: Form Objects
Appendix K: Classes and Structures
Appendix L: LINQ
Appendix M: Generics
Appendix N: Graphics
Appendix O: Useful Exception Classes
Appendix P: Date And Time Format Specifiers
Appendix Q: Other Format Specifiers
Appendix R: The Application Class
Appendix S: The My Namespace
Appendix T: Streams
Appendix U: Filesystem Classes
Appendix V: Visual Studio Versions
Introduction