template < class Base >
class CComCompositeControl : public CComControl< Base, CAxDialogImpl< Base> >
Parameters
Base
Your class, derived from CComObjectRoot or CComObjectRootEx, as well as from any other interfaces you wish to support for your composite control.
Classes derived from class CComCompositeControl inherit the functionality of an ActiveX composite control. ActiveX controls derived from CComCompositeControl are hosted by a standard dialog box. These types of controls are called composite controls because they are able to host other controls (native Windows controls and ActiveX controls).
CComCompositeControl identifies the dialog resource to use in creating the composite control by looking for an enumerated data member in the child class. The member IDD of this child class is set to the resource ID of the dialog resource that will be used as the control's window. The following is an example of the data member that the class derived from CComCompositeControl should contain to identify the dialog resource to be used for the control's window:
enum { IDD = IDD_MYCOMPOSITE };
Note Composite controls are always windowed controls, although they can contain windowless controls.
A control implemented by a CComCompositeControl-derived class has default tabbing behavior built in. When the control receives focus by being tabbed to in a containing application, successively pressing the TAB key will cause the focus to be cycled through all of the composite control's contained controls, then out of the composite control and on to the next item in the tab order of the container. The tab order of the hosted controls is determined by the dialog resource and determines the order in which tabbing will occur.
#include <atlctl.h>
See Also