ISpecifyPropertyPages
The ISpecifyPropertyPage
interface indicates that an object supports property pages. OLE property pages enable
an object to display its properties in a tabbed dialog box known as a property
sheet. An end user can then view and change the object s properties. An object can display its property pages
independent of its client, or the client can manage the display of property
pages from a number of contained objects in a single property sheet. Property
pages also provide a means for notifying a client of changes in an object s properties.
A property
page object manages a particular page within a property sheet. A property page
implements at least IPropertyPage
An object
specifies its support for property pages by implementing ISpecifyPropertyPages.
Through this interface the caller can obtain a list of CLSIDs identifying the
specific property pages that the object supports. If the object specifies a
property page CLSID, the object must be able to receive property changes from
the property page.
When to Implement
Implement
this interface on an object to indicate support for a property sheet and at
least one property page.
When to Use
Use this
interface to obtain a list of property page CLSIDs that this object supports.
The CLSID list can be later passed to OleCreatePropertyFrame or OleCreatePropertyFrameIndirect
to invoke a property sheet. If a caller wants to display a property sheet for
multiple objects, it must first obtain the CLSID list for each object, then
create a list containing only the intersection of the set of CLSID in each
separate list. In other words, whoever invokes a property sheet for any number
of objects must guarantee that each property page CLSID was specified by all
objects for which the sheet is being displayed. This avoids the possibility
that a property page is displayed for an object that doesn t understand that page; if this were allowed, it would
result in problems when the page sent unknown and unexpected information to an
object.
Methods in Vtable Order
IUnknown
Methods |
Description |
QueryInterface |
Returns
pointers to supported interfaces. |
AddRef |
Increments
reference count. |
Release |
Decrements
reference count. |
ISpecifyPropertyPages
Methods |
Description |
GetPages |
Fills an
array of CLSIDs for each property page that can be displayed in this object s property sheet. |
See Also