Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le tableau ci-dessous répertorie les interfaces de conteneur de contrôle ActiveX et indique quelles interfaces sont facultatives, et qui sont obligatoires et doivent être implémentées par des conteneurs de contrôle.
| Interface | Obligatoire? | Commentaires |
|---|---|---|
|
IOleClientSite |
Oui |
|
|
IAdviseSink |
Non |
Uniquement lorsque le conteneur souhaite (a) des notifications de modification de données (contrôles avec IDataObject), (b) afficher la notification de modification (contrôles qui ne sont pas actifs et qui ont IViewObject ou IViewObject2), et (c) d’autres notifications provenant de contrôles agissant en tant qu’objets incorporés standard. |
|
IOleInPlaceSite |
Oui |
|
|
IOleControlSite |
Oui |
|
|
IOleInPlaceFrame |
Oui |
|
|
IOleContainer |
Oui |
Voir la note 1 |
|
IDispatch pour les propriétés ambiantes |
Oui |
Consultez la note 2 et Propriétés ambiantes des contrôles |
| Jeux d’événements de contrôle |
Oui |
Voir la note 2 |
|
ISimpleFrameSite |
Non |
ISimpleFrameSite et la prise en charge des images simples imbriquées est facultative. |
|
IPropertyNotifySink |
Non |
Uniquement nécessaire pour les conteneurs qui ont (a) leur propre interface utilisateur de modification de propriété qui nécessiterait la mise à jour chaque fois qu’un contrôle a changé une propriété elle-même ou (b) souhaite contrôler [demandéit] modifications de propriété et d’autres fonctionnalités de liaison de données. |
|
IErrorInfo |
Oui |
Obligatoire si le conteneur prend en charge les interfaces doubles. Voir la note 2. |
|
IClassFactory2 |
Non |
La prise en charge est fortement recommandée. |
- IOleContainer est implémenté sur l’objet document ou formulaire (ou analogique approprié) qui contient les sites conteneur. Les contrôles utilisent IOleContainer pour accéder à d’autres contrôles dans le même document ou formulaire.
- La prise en charge des interfaces doubles n’est pas obligatoire, mais est fortement recommandée. L’écriture de conteneurs de contrôle ActiveX pour tirer parti des interfaces doubles offre de meilleures performances avec des contrôles qui offrent une prise en charge double interface.
Les conteneurs de contrôle ActiveX doivent prendre en charge les exceptions OLE Automation. Si un conteneur de contrôle prend en charge deux interfaces, il doit capturer des exceptions d’automatisation via IErrorInfo.