Programming web parts is a lot like programming ASP.NET custom controls, so if you're already familiar with ASP.NET you have a huge head start on learning web part programming. If not, there's a steep learning curve, and I don't have space here to address everything you need to know. What I can do is build you a better on-ramp to the information through a series of examples that demonstrate the major programming tasks. For a complete understanding, however, you'll need a separate (and fairly thick) book.
Before you begin, you should set up your environment as described in Chapter 8. This chapter assumes that you've already done that and are familiar with the steps covered in Chapter 8. You'll also need to know .NET and Visual Basic .NET or Visual C# for this chapter to be of much use. I show the examples in Visual Basic .NET, but equivalent C# samples are available at http://www.usingsharepoint.com/Samples/Ch09CS.aspx.
Web parts are based on ASP.NET web controls. In fact, the
WebPart class inherits from
System.Web.UI.Control. That means most of the programming issues of
composition, lifetime, state, and server versus client-side processing are the same. In case
you're not familiar with those concepts, here's a brief synopsis:
Web parts are made up of other components—mainly ASP.NET web controls, HTML
controls, literal strings, and client-side scripts. Components are assembled in a
Controls collection and then rendered ...