About Format Objects

The format object of the CDO Rendering Library contains specific information that controls how a messaging property of any type is to be rendered. In other words, format objects provide a way to interpret information as you render it.

There is a 1:1 relationship between format object and property to be rendered; each format controls exactly one property, and each property to be rendered must be represented by exactly one format. Rendering information is contained in the format's Patterns collection, which is accessed with the format's Patterns property.

You need not always render properties using formats. If you used a ContainerRenderer object without adding formats, it would render MAPI data according to certain default rules. For example, it would convert number values into strings and it would convert multivalued string Unicode arrays into a single line of semicolon-separated text. It would also use its own rules for rendering date and time values. Using a format object lets you make exceptions to these default rules by having the renderer display each property value exactly as you want.

There are two mutually exclusive types of formats, whose uses are explained in Property-Only Formats and Named Formats.

The following diagram shows how formats and other objects relate in the rendering of object properties. A format contains a set of patterns, each of which tells exactly how to render a specific property value of the MAPI property being rendered.

Object Relationships for Property Rendering