Windows Forms 2.0 Programming

The Book

Welcome to the home page for "Windows Forms 2.0 Programming," by Chris Sells and Michael Weinhardt, available from Amazon.

The Source

The Table of Contents

  • Foreword
  • Preface
  • Chapter 1 Hello, Windows Forms
  • Chapter 2 Forms
  • Chapter 3 Dialogs
  • Chapter 4 Layout
  • Chapter 5 Drawing Basics
  • Chapter 6 Drawing Text
  • Chapter 7 Advanced Drawing
  • Chapter 8 Printing
  • Chapter 9 Components
  • Chapter 10 Controls
  • Chapter 11 Design-Time Integration: The Properties Window
  • Chapter 12 Design-Time Integration: Designers and Smart Tags
  • Chapter 13 Resources
  • Chapter 14 Applications
  • Chapter 15 Settings
  • Chapter 16 Data Binding Basics
  • Chapter 17 Applied Data Binding
  • Chapter 18 Multithreaded User Interfaces
  • Chapter 19 ClickOnce Deployment
  • Appendix A What’s New in Windows Forms 2.0
  • Appendix C Delegates and Events
  • Appendix D Component and Control Survey
  • Appendix E Drag and Drop
  • Appendix F Document Management
  • Bibliography
  • Index

The 1st Edition

The source code, sample chapters and errata for the 1st edition, Windows Forms Programming in C# and Windows Forms Programming in VB.NET, are available below.

Also, "Windows Forms Programming in C#," on which the 2e was based, was awarded the 1st runner-up in the Best .NET Books/Training Software category of the 2005 .NET Developer's Journal Reader's Choice Awards. I'd like to thank the academy...

The 1e Source

The 1e Sample Chapters

Comment Feed 9 comments on this post


i like this ebook

Saturday, Oct 2, 2010, 2:37 PM

cheap uggs:

nice post

Tuesday, Nov 16, 2010, 5:13 PM


Saturday, Jan 8, 2011, 5:39 PM

kevin (email

I found something strange in ch. 17, applied data binding in 2e on page. 725. In the passing paragraph, the author mentioned two forms to make the list-item UI. But in the codes, there are list form/edit form and item form.

Since the sample codes are too concise to figure out where went wrong, I have to ask for help on this issue.


Monday, Nov 21, 2011, 6:55 AM


Dialogs on page 27. This explanation does not follow the previous discussion. No where is it explained how to expose the favorite color setting as a property. No where is it discussed how to call this form from Form1. No where is it explained what or where "optionsToolStripMenuItem_Click" comes from or why. How is the initial color value passed to the FavoriteColor property? And the explanation of handling the Ok and Cancel make no sense.

Tuesday, Mar 13, 2012, 10:08 AM

Rick Hedin ( cubsno1 at gmail dot com ):

I think the code below is nonsensical. It's from the dialogs chapter. After you set DialogResult to OK, the Close call sets it to Cancel. The comment in the following function even says so. Just an error?

void okButton_Click(object sender, EventArgs e) {
    this.DialogResult = DialogResult.OK;

void cancelButton_Click(object sender, EventArgs e) {
    // Close will set the DialogResult to Cancel, so setting
    // it explicitly is just good manners
    this.DialogResult = DialogResult.Cancel;

Thursday, Mar 15, 2012, 12:53 PM


I'm studying :

Windows Forms Programming in C# - Chris Sells:
Addison Wesley - August 27, 2003 - 0-321-11620-8

It's very good !.

But I have a problem with chapter 10 "Resources" .

This : (1)

Stream stream = assem.GetManifestResourceStream ( this.GetType ( ), "Azul.jpg" );

produces : "System.ArgumentException: Stream is not a valid resource file"

But this : (2)

Stream stream = assem.GetManifestResourceStream ( this.GetType ( ), "Resource1.resources" )

works fine , no errors .

Perhaps there was a change in .NET since you wrote this book, so that (1) is now an incorrect way of using it ?

Tuesday, Mar 20, 2012, 3:43 AM

Steve jiang:

Dear Chris and Michael,
    I am a new Windows Forms programmer. I'm studying your book(2nd edition) which is one of the best book on Windows Forms programming. Bun when I run your source code: the DocAppSample in the xB_MFC using VS2010 on my compuer(Win7), I get a System.UnauthorizedAccessException. I don't solve it. May you help me?
    Have a good day.


Friday, Jul 20, 2012, 11:07 PM


Best Windows Forms Programming Book... Ever!

Wednesday, Sep 19, 2012, 1:55 AM

comment on this post

HTML tags will be escaped.

Powered By ASP.NET

Hosted by SecureWebs