2.0 Introduction

ASP.NET seems to be all the rage in many quarters these days, but Windows Forms applications offer great functionality, both as standalone applications and in their smart client role. Standalone Windows Forms applications give you, the developer, a great amount of control over what the user interface (UI) can do, and they allow you to interact with the local system in ways you can’t in ASP.NET applications.

With Windows Forms applications, you can take advantage of multithreading to boost performance during long-running tasks, you can manipulate resources on the local system, and you can offload processing to the client itself. You can also create rich user interfaces with a wealth of impressive features, including multiple windows, powerful controls, and highly stylized user interfaces.

At the heart of any Windows Forms UI are the controls with which it was built. Controls extend System.Windows.Forms.Control and are the pieces you use to create your UI and its underpinning functionality. Controls let you do small tasks, such as ticking a checkbox or accepting user input in a text box, as well as big things, such as displaying pages of data from a database query in a fancy grid. Many controls are visible components on a Windows Form, but others work behind the scenes, doing things like validating input data or providing error handling.

Controls have runtime functionality (the actions listed in the previous paragraph), but they often have design-time functionality as ...

Get Windows Developer Power Tools now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.