I will not waste any time discussing the syntax of the events.
More information can be found in Using Events and Delegates in C#.
If any client attempts to set the zip code to a non-numerical value, the update will be rejected, and the value will remain the same: class are compelling enough for you to download it, and start using it in your classes.
Inner classes were used to simplify the event will include a mechanism for signaling back to the property that generated the event that the update is to be cancelled, enabling event handlers to validate the proposed new value, and reject the new value if it fails validation.
The article assumes that the reader has a good understanding of implementing events and delegates in C#.
are to enable client classes to add new properties, assign and re-assign values to those properties, and read the current values out of the properties.
A secondary feature is to design and implement the class in such a way as to make the class interface very intuitive, and easy to use. Type-safe collections were considered, but a decision was taken to avoid over-complicating the code; type-safe collections will be the subject of a future article instead.
It is used to play animations both while an Update Panel is updating and after it has finished updating.