PUBLISHED BY
Microsoft Press
A Division of Microsoft Corporation
One Microsoft Way
Redmond, Washington 98052-6399
Copyright © 2010 by Michael Halvorson
All rights reserved. No part of the contents of this book may be reproduced or transmitted in any form or by any means
without the written permission of the publisher.
Library of Congress Control Number: 2010924441
Printed and bound in the United States of America.
1 2 3 4 5 6 7 8 9 QWT 5 4 3 2 1 0
Distributed in Canada by H.B. Fenn and Company Ltd.
A CIP catalogue record for this book is available from the British Library.
Microsoft Press books are available through booksellers and distributors worldwide. For further information about
international editions, contact your local Microsoft Corporation office or contact Microsoft Press International directly
at fax (425) 936-7329. Visit our Web site at www.microsoft.com/mspress. Send comments to mspinput@microsoft.com.
Microsoft, Microsoft Press, Access, ActiveX, Arc, Azure, DataTips, Excel, Expression, Halo, IntelliSense, Internet Explorer,
MS, MSDN, MS-DOS, PowerPoint, SharePoint, Silverlight, SQL Server, Visual Basic, Visual C#, Visual C++, Visual
InterDev, Visual Studio, Windows, Windows Azure, Windows Server, Windows Vista and Zoo Tycoon are either registered
trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. Other product and company
names mentioned herein may be the trademarks of their respective owners.
The example companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted
herein are fictitious. No association with any real company, organization, product, domain name, e-mail address, logo,
person, place, or event is intended or should be inferred.
This book expresses the author’s views and opinions. The information contained in this book is provided without any
express, statutory, or implied warranties. Neither the authors, Microsoft Corporation, nor its resellers, or distributors will
be held liable for any damages caused or alleged to be caused either directly or indirectly by this book.
Acquisitions Editor: Ben Ryan
Developmental Editor: Devon Musgrave
Project Editor: Valerie Woolley
Editorial Production: Christian Holdener, S4Carlisle Publishing Services
Technical Reviewer: Technical Review services provided by Content Master, a member of CM Group, Ltd.
Cover: Tom Draper Design
Body Part No. X16-88509
For Henry
Contents at a Glance
Part I Getting Started with Microsoft Visual Basic 2010
1 Exploring the Visual Studio Integrated Development
Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Writing Your First Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3 Working with Toolbox Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4 Working with Menus, Toolbars, and Dialog Boxes . . . . . . . . . . . . 97
Part II Programming Fundamentals
5 Visual Basic Variables and Formulas,
and the .NET Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6 Using Decision Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
7 Using Loops and Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
8 Debugging Visual Basic Programs . . . . . . . . . . . . . . . . . . . . . . . . 209
9 Trapping Errors by Using Structured Error Handling . . . . . . . . . 227
10 Creating Modules and Procedures . . . . . . . . . . . . . . . . . . . . . . . . 247
11 Using Arrays to Manage Numeric and String Data . . . . . . . . . . . 273
12 Working with Collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
13 Exploring Text Files and String Processing . . . . . . . . . . . . . . . . . . 313
Part III Designing the User Interface
14 Managing Windows Forms and Controls at Run Time . . . . . . . . 351
15 Adding Graphics and Animation Effects . . . . . . . . . . . . . . . . . . . 375
16 Inheriting Forms and Creating Base Classes . . . . . . . . . . . . . . . . 393
17 Working with Printers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Part IV Database and Web Programming
18 Getting Started with ADO.NET . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
19 Data Presentation Using the DataGridView Control . . . . . . . . . 467
20 Creating Web Sites and Web Pages by Using Visual
Web Developer and ASP.NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
v