|     |   | Copyright | 
|     |   | PRENTICE HALL CORE SERIES | 
|     |   | About the Author | 
|     |   | Foreword | 
|     |   | Preface | 
|     |   | Acknowledgments | 
|     |   | Part I. 
        Fundamentals of C# Programming and Introduction to .NET | 
|     | 
             
           |   | 
               
               Chapter 1. 
        Introduction to .NET and C# | 
|     | 
             
           |   | 
             Section 1.1. 
           Overview of the .NET Framework | 
|     | 
             
           |   | 
             Section 1.2. 
           Common Language Runtime | 
|     | 
             
           |   | 
             Section 1.3. 
           Framework Class Library | 
|     | 
             
           |   | 
             Section 1.4. 
           Working with the .NET Framework and SDK | 
|     | 
             
           |   | 
             Section 1.5. 
           Understanding the C# Compiler | 
|     | 
             
           |   | 
             Section 1.6. 
           Summary | 
|     | 
             
           |   | 
             Section 1.7. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 2. 
        C# Language Fundamentals | 
|     | 
             
           |   | 
             Section 2.1. 
           The Layout of a C# Program | 
|     | 
             
           |   | 
             Section 2.2. 
           Primitives | 
|     | 
             
           |   | 
             Section 2.3. 
           Operators: Arithmetic, Logical, and Conditional | 
|     | 
             
           |   | 
             Section 2.4. 
           Loops | 
|     | 
             
           |   | 
             Section 2.5. 
           C# Preprocessing Directives | 
|     | 
             
           |   | 
             Section 2.6. 
           Strings | 
|     | 
             
           |   | 
             Section 2.7. 
           Enumerated Types | 
|     | 
             
           |   | 
             Section 2.8. 
           Arrays | 
|     | 
             
           |   | 
             Section 2.9. 
           Reference and Value Types | 
|     | 
             
           |   | 
             Section 2.10. 
           Summary | 
|     | 
             
           |   | 
             Section 2.11. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 3. 
        Class Design in C# | 
|     | 
             
           |   | 
             Section 3.1. 
           Introduction to a C# Class | 
|     | 
             
           |   | 
             Section 3.2. 
           Defining a Class | 
|     | 
             
           |   | 
             Section 3.3. 
           Overview of Class Members | 
|     | 
             
           |   | 
             Section 3.4. 
           Constants, Fields, and Properties | 
|     | 
             
           |   | 
             Section 3.5. 
           Methods | 
|     | 
             
           |   | 
             Section 3.6. 
           Constructors | 
|     | 
             
           |   | 
             Section 3.7. 
           Delegates and Events | 
|     | 
             
           |   | 
             Section 3.8. 
           Operator Overloading | 
|     | 
             
           |   | 
             Section 3.9. 
           Interfaces | 
|     | 
             
           |   | 
             Section 3.10. 
           Generics | 
|     | 
             
           |   | 
             Section 3.11. 
           Structures | 
|     | 
             
           |   | 
             Section 3.12. 
           Structure Versus Class | 
|     | 
             
           |   | 
             Section 3.13. 
           Summary | 
|     | 
             
           |   | 
             Section 3.14. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 4. 
        Working with Objects in C# | 
|     | 
             
           |   | 
             Section 4.1. 
           Object Creation | 
|     | 
             
           |   | 
             Section 4.2. 
           Exception Handling | 
|     | 
             
           |   | 
             Section 4.3. 
           Implementing System.Object Methods in a Custom Class | 
|     | 
             
           |   | 
             Section 4.4. 
           Working with .NET Collection Classes and Interfaces | 
|     | 
             
           |   | 
             Section 4.5. 
           Object Serialization | 
|     | 
             
           |   | 
             Section 4.6. 
           Object Life Cycle Management | 
|     | 
             
           |   | 
             Section 4.7. 
           Summary | 
|     | 
             
           |   | 
             Section 4.8. 
           Test Your Understanding | 
|     |   | Part II. 
        Creating Applications Using the .NET Framework Class Library | 
|     | 
             
           |   | 
               
               Chapter 5. 
        C# Text Manipulation and File I/O | 
|     | 
             
           |   | 
             Section 5.1. 
           Characters and Unicode | 
|     | 
             
           |   | 
             Section 5.2. 
           The String Class | 
|     | 
             
           |   | 
             Section 5.3. 
           Comparing Strings | 
|     | 
             
           |   | 
             Section 5.4. 
           Searching, Modifying, and Encoding a String's Content | 
|     | 
             
           |   | 
             Section 5.5. 
           StringBuilder | 
|     | 
             
           |   | 
             Section 5.6. 
           Formatting Numeric and DateTime Values | 
|     | 
             
           |   | 
             Section 5.7. 
           Regular Expressions | 
|     | 
             
           |   | 
             Section 5.8. 
           System.IO: Classes to Read and Write Streams of Data | 
|     | 
             
           |   | 
             Section 5.9. 
           System.IO: Directories and Files | 
|     | 
             
           |   | 
             Section 5.10. 
           Summary | 
|     | 
             
           |   | 
             Section 5.11. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 6. 
        Building Windows Forms Applications | 
|     | 
             
           |   | 
             Section 6.1. 
           Programming a Windows Form | 
|     | 
             
           |   | 
             Section 6.2. 
           Windows.Forms Control Classes | 
|     | 
             
           |   | 
             Section 6.3. 
           The Form Class | 
|     | 
             
           |   | 
             Section 6.4. 
           Working with Menus | 
|     | 
             
           |   | 
             Section 6.5. 
           Adding Help to a Form | 
|     | 
             
           |   | 
             Section 6.6. 
           Forms Inheritance | 
|     | 
             
           |   | 
             Section 6.7. 
           Summary | 
|     | 
             
           |   | 
             Section 6.8. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 7. 
        Windows Forms Controls | 
|     | 
             
           |   | 
             Section 7.1. 
           A Survey of .NET Windows Forms Controls | 
|     | 
             
           |   | 
             Section 7.2. 
           Button Classes, Group Box, Panel, and Label | 
|     | 
             
           |   | 
             Section 7.3. 
           PictureBox and TextBox Controls | 
|     | 
             
           |   | 
             Section 7.4. 
           ListBox, CheckedListBox, and ComboBox Classes | 
|     | 
             
           |   | 
             Section 7.5. 
           The ListView and TreeView Classes | 
|     | 
             
           |   | 
             Section 7.6. 
           The ProgressBar, Timer, and StatusStrip Classes | 
|     | 
             
           |   | 
             Section 7.7. 
           Building Custom Controls | 
|     | 
             
           |   | 
             Section 7.8. 
           Using Drag and Drop with Controls | 
|     | 
             
           |   | 
             Section 7.9. 
           Using Resources | 
|     | 
             
           |   | 
             Section 7.10. 
           Summary | 
|     | 
             
           |   | 
             Section 7.11. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 8. 
        .NET Graphics Using GDI+ | 
|     | 
             
           |   | 
             Section 8.1. 
           GDI+ Overview | 
|     | 
             
           |   | 
             Section 8.2. 
           Using the Graphics Object | 
|     | 
             
           |   | 
             Section 8.3. 
           Images | 
|     | 
             
           |   | 
             Section 8.4. 
           Summary | 
|     | 
             
           |   | 
             Section 8.4. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 9. 
        Fonts, Text, and Printing | 
|     | 
             
           |   | 
             Section 9.1. 
           Fonts | 
|     | 
             
           |   | 
             Section 9.2. 
           Drawing Text Strings | 
|     | 
             
           |   | 
             Section 9.3. 
           Printing | 
|     | 
             
           |   | 
             Section 9.4. 
           Summary | 
|     | 
             
           |   | 
             Section 9.5. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 10. 
        Working with XML in .NET | 
|     | 
             
           |   | 
             Section 10.1. 
           Working with XML | 
|     | 
             
           |   | 
             Section 10.2. 
           Techniques for Reading XML Data | 
|     | 
             
           |   | 
             Section 10.3. 
           Techniques for Writing XML Data | 
|     | 
             
           |   | 
             Section 10.4. 
           Using XPath to Search XML | 
|     | 
             
           |   | 
             Section 10.5. 
           Summary | 
|     | 
             
           |   | 
             Section 10.6. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 11. 
        ADO.NET | 
|     | 
             
           |   | 
             Section 11.1. 
           Overview of the ADO.NET Architecture | 
|     | 
             
           |   | 
             Section 11.2. 
           Data Access Models: Connected and Disconnected | 
|     | 
             
           |   | 
             Section 11.3. 
           ADO.NET Connected Model | 
|     | 
             
           |   | 
             Section 11.4. 
           DataSets, DataTables, and the Disconnected Model | 
|     | 
             
           |   | 
             Section 11.5. 
           XML and ADO.NET | 
|     | 
             
           |   | 
             Section 11.6. 
           Summary | 
|     | 
             
           |   | 
             Section 11.7. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 12. 
        Data Binding with Windows Forms Controls | 
|     | 
             
           |   | 
             Section 12.1. 
           Overview of Data Binding | 
|     | 
             
           |   | 
             Section 12.2. 
           Using Simple and Complex Data Binding in an Application | 
|     | 
             
           |   | 
             Section 12.3. 
           The DataGridView Class | 
|     | 
             
           |   | 
             Section 12.4. 
           Summary | 
|     | 
             
           |   | 
             Section 12.4. 
           Test Your Understanding | 
|     |   | Part III. 
        Advanced Use of C# and the .NET Framework | 
|     | 
             
           |   | 
               
               Chapter 13. 
        Asynchronous Programming and Multithreading | 
|     | 
             
           |   | 
             Section 13.1. 
           What Is a Thread? | 
|     | 
             
           |   | 
             Section 13.2. 
           Asynchronous Programming | 
|     | 
             
           |   | 
             Section 13.3. 
           Working Directly with Threads | 
|     | 
             
           |   | 
             Section 13.4. 
           Thread Synchronization | 
|     | 
             
           |   | 
             Section 13.5. 
           Summary | 
|     | 
             
           |   | 
             Section 13.5. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 14. 
        Creating Distributed Applications with Remoting | 
|     | 
             
           |   | 
             Section 14.1. 
           Application Domains | 
|     | 
             
           |   | 
             Section 14.2. 
           Remoting | 
|     | 
             
           |   | 
             Section 14.3. 
           Leasing and Sponsorship | 
|     | 
             
           |   | 
             Section 14.4. 
           Summary | 
|     | 
             
           |   | 
             Section 14.5. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 15. 
        Code Refinement, Security, and Deployment | 
|     | 
             
           |   | 
             Section 15.1. 
           Following .NET Code Design Guidelines | 
|     | 
             
           |   | 
             Section 15.2. 
           Strongly Named Assemblies | 
|     | 
             
           |   | 
             Section 15.3. 
           Security | 
|     | 
             
           |   | 
             Section 15.4. 
           Application Deployment Considerations | 
|     | 
             
           |   | 
             Section 15.5. 
           Summary | 
|     | 
             
           |   | 
             Section 15.6. 
           Test Your Understanding | 
|     |   | Part Programming for the Internet | 
|     | 
             
           |   | 
               
               Chapter 16. 
        ASP.NET Web Forms and Controls | 
|     | 
             
           |   | 
             Section 16.1. 
           Client-Server Interaction over the Internet | 
|     | 
             
           |   | 
             Section 16.2. 
           Web Forms Controls | 
|     | 
             
           |   | 
             Section 16.3. 
           Data Binding and Data Source Controls | 
|     | 
             
           |   | 
             Section 16.4. 
           Validation Controls | 
|     | 
             
           |   | 
             Section 16.5. 
           Master and Content Pages | 
|     | 
             
           |   | 
             Section 16.6. 
           Building and Using Custom Web Controls | 
|     | 
             
           |   | 
             Section 16.7. 
           Selecting a Web Control to Display Data | 
|     | 
             
           |   | 
             Section 16.8. 
           Summary | 
|     | 
             
           |   | 
             Section 16.9. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 17. 
        The Asp.Net Application Environment | 
|     | 
             
           |   | 
             Section 17.1. 
           HTTP Request and Response Classes | 
|     | 
             
           |   | 
             Section 17.2. 
           ASP.NET and Configuration Files | 
|     | 
             
           |   | 
             Section 17.3. 
           ASP.NET Application Security | 
|     | 
             
           |   | 
             Section 17.4. 
           Maintaining State | 
|     | 
             
           |   | 
             Section 17.5. 
           Caching | 
|     | 
             
           |   | 
             Section 17.6. 
           Creating a Web Client with WebRequest and WebResponse | 
|     | 
             
           |   | 
             Section 17.7. 
           HTTP Pipeline | 
|     | 
             
           |   | 
             Section 17.8. 
           Summary | 
|     | 
             
           |   | 
             Section 17.9. 
           Test Your Understanding | 
|     | 
             
           |   | 
               
               Chapter 18. 
        XML Web Services | 
|     | 
             
           |   | 
             Section 18.1. 
           Introduction to Web Services | 
|     | 
             
           |   | 
             Section 18.2. 
           Building an XML Web Service | 
|     | 
             
           |   | 
             Section 18.3. 
           Building an XML Web Service Client | 
|     | 
             
           |   | 
             Section 18.4. 
           Understanding WSDL and SOAP | 
|     | 
             
           |   | 
             Section 18.5. 
           Using Web Services with Complex Data Types | 
|     | 
             
           |   | 
             Section 18.6. 
           Web Services Performance | 
|     | 
             
           |   | 
             Section 18.7. 
           Summary | 
|     | 
             
           |   | 
             Section 18.8. 
           Test Your Understanding | 
|     |   | 
               
               Appendix A. 
        Features Specific to .NET 2.0 and C# 2.0 | 
|     |   | 
               
               Appendix B. 
        DataGridView Events and Delegates | 
|     |   | 
               
               Answers to Chapter Exercises | 
|     | 
             
           |   | Chapter 1 | 
|     | 
             
           |   | Chapter 2 | 
|     | 
             
           |   | Chapter 3 | 
|     | 
             
           |   | Chapter 4 | 
|     | 
             
           |   | Chapter 5 | 
|     | 
             
           |   | Chapter 6 | 
|     | 
             
           |   | Chapter 7 | 
|     | 
             
           |   | Chapter 8 | 
|     | 
             
           |   | Chapter 9 | 
|     | 
             
           |   | Chapter 10 | 
|     | 
             
           |   | Chapter 11 | 
|     | 
             
           |   | Chapter 12 | 
|     | 
             
           |   | Chapter 13 | 
|     | 
             
           |   | Chapter 14 | 
|     | 
             
           |   | Chapter 15 | 
|     | 
             
           |   | Chapter 16 | 
|     | 
             
           |   | Chapter 17 | 
|     | 
             
           |   | Chapter 18 | 
|     |   | Index |