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.
Spécifie la direction d’un objet IContextLink .
Syntaxe
typedef enum ContextLinkDirection {
ContextLinkDirection_LinksWith = 0,
ContextLinkDirection_LinksFrom = 1,
ContextLinkDirection_LinksTo = 2
} ContextLinkDirection;
Constantes
-
ContextLinkDirection_LinksWith
-
L’IContextNode est un dessin directionnel qui pointe loin du IContextLink.
-
ContextLinkDirection_LinksFrom
-
IContextNode est un dessin directionnel qui pointe vers IContextLink.
-
ContextLinkDirection_LinksTo
-
Il n’y a aucun dessin directionnel dans le lien. Par exemple, un dessin manuscrit peut souligner un mot manuscrit. Aucune direction n’est déduite du soulignement.
Exemples
L’exemple suivant prend un objet IContextNode , m_pSelectedNodeet enregistre tous les objets IContextNode auxquels il est lié en parcourant l’arborescence ancêtre et en ajoutant les objets dans un CArray objet, linkedToNodes.
CheckHResult est une fonction qui prend un HRESULT et une chaîne, et lève une exception créée avec la chaîne si n’est HRESULT pas SUCCESS.
// Find all first ancestor that contains links of type Enclose
CArray<IContextNode*,IContextNode*> linkedToNodes = CArray<IContextNode*,IContextNode*>();
IContextNode* pAncestor;
CheckHResult(m_pSelectedNode->GetParentNode(&pAncestor),
"IContextNode::GetParentNode failed");
while (pAncestor != NULL)
{
// Get the links
IContextLinks* pLinks;
CheckHResult(pAncestor->GetContextLinks(&pLinks),
"IContextNode::GetContextLinks failed");
ULONG nLinks;
CheckHResult(pLinks->GetCount(&nLinks), "IContextLinks::GetCount failed");
for (ULONG i = 0; i < nLinks; i++)
{
IContextLink* pLink;
CheckHResult(pLinks->GetContextLink(i, &pLink),
"IContextLinks::GetContextLink failed");
// Check link direction
ContextLinkDirection linkDirection;
CheckHResult(pLink->GetContextLinkDirection(&linkDirection),
"IContextLink:GetContextLinkDirection failed");
if (linkDirection == ContextLinkDirection_LinksTo)
{
// Get source node and add the array
IContextNode* pSourceNode;
CheckHResult(pLink->GetSourceNode(&pSourceNode),
"IContextLink::GetSourceNode failed");
linkedToNodes.Add(pSourceNode);
}
}
// Go up another level
IContextNode* pNewAncestor;
CheckHResult(pAncestor->GetParentNode(&pNewAncestor),
"IContextNode::GetParentNode failed");
pAncestor = pNewAncestor;
}
Spécifications
| Condition requise | Valeur |
|---|---|
| Client minimal pris en charge |
Windows XP Édition Tablette PC [applications de bureau uniquement] |
| Serveur minimal pris en charge |
Aucun pris en charge |
| En-tête |
|