COleLinkingDoc, classe
La classe de base pour les documents de conteneur OLE qui prennent en charge la liaison aux éléments inclus ils contiennent.
class COleLinkingDoc : public COleDocument
Membres
Constructeurs publics
Nom |
Description |
---|---|
Construit un objet COleLinkingDoc. |
Méthodes publiques
Nom |
Description |
---|---|
Enregistre le document avec les DLL système OLE. |
|
Révoque l'inscription du document. |
Méthodes protégées
Nom |
Description |
---|---|
Recherche l'élément incorporé spécifié. |
|
Recherche l'élément lié spécifié. |
Notes
Une application conteneur que la liaison prend en charge des éléments inline est appelé « conteneur de lien. » l'exemple d'application d' OCLIENT est un exemple d'un conteneur de lien.
Lorsque la source d'un élément lié est un élément inclus dans un autre document, ce document contenant doit être chargé pour que l'élément inline est modifié. Pour cette raison, un conteneur de lien doit pouvoir être activé par une autre application conteneur lorsque l'utilisateur souhaite modifier la source de l'élément lié. Votre application doit également utiliser la classe de COleTemplateServer afin qu'il puisse créer des documents une fois activé par programme.
Pour rendre votre conteneur un conteneur de lien, dérivez votre classe de document d' COleLinkingDoc au lieu de COleDocument. Comme avec tout autre conteneur OLE, vous devez concevoir votre classe pour stocker les données natives de l'application ainsi qu'un incorporé ou des éléments liés. De plus, vous devez concevoir des structures de données pour stocker les données natives. Si vous définissez CDocItemclasse dérivée pour les données natives de votre application, vous pouvez utiliser l'interface définie par COleDocument pour stocker les données natives ainsi que OLE vos données.
Pour permettre à votre application d'être lancé par programme par un autre conteneur, déclarez un objet d' COleTemplateServer en tant que membre d' CWinAppde votre application classe dérivée de :
class COleContainerApp : public CWinApp
{
protected:
COleTemplateServer m_server;
// remainder of class declaration ommitted
Dans la fonction membre d' InitInstance de votre CWinAppclasse dérivée, créez un modèle de document et spécifiez votre COleLinkingDocclasse dérivée comme la classe de document :
// CMyLinkDoc is derived from COleLinkingDoc
CMultiDocTemplate* pDocTemplate = new CMultiDocTemplate(IDR_LINKDOCTYPE,
RUNTIME_CLASS(CMyLinkDoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CMyLinkView));
if (!pDocTemplate)
return FALSE;
pDocTemplate->SetContainerInfo(IDR_OLECONTTYPE_CNTR_IP);
AddDocTemplate(pDocTemplate);
Connectez votre objet d' COleTemplateServer à vos modèles de document en appelant la fonction membre d' ConnectTemplate de l'objet, et stocker tous les objets de classe avec OLE le système en appelant COleTemplateServer::RegisterAll:
m_server.ConnectTemplate(clsid, pDocTemplate, FALSE);
COleTemplateServer::RegisterAll();
Pour obtenir un exemple CWinApp- la définition de classe dérivée et l' InitInstance fonctionnent, consultez OCLIENT.H et OCLIENT.CPP dans l'exemple OCLIENTMFC.
Pour plus d'informations sur l'utilisation COleLinkingDoc, consultez les articles conteneurs : implémenter un conteneur et conteneurs : Fonctionnalités avancées.
Hiérarchie d'héritage
COleLinkingDoc
Configuration requise
Header: afxole.h