2012-03-15 5 views
0

Je suis en générant un document de mot en utilisant SDK Open XML, le document contient une zone de texte, l'élément généré pour la zone de texte est sous cette forme:SDK Open XML: un autre contenu est ignoré avec le mot 2007

<mc:AlternateContent> 
    <mc:Choice Requires="wps"> 
    <w:drawing> 
     // Drawing for word 2010 
    </w:drawing> 
    </mc:Choice> 
     <mc:Fallback> 
     <w:pict> 
     // Pict for word 2007 
     </w:pict> 
     </mc:Fallback> 
</mc:AlternateContent> 

Le produit Le document est valide par rapport aux formats 2007 et 2010, lorsque le document est ouvert avec le mot 2010, le textBox est visible, mais en ouvrant le document avec le mot 2007, le textBox est vide.

Comment puis-je ajouter un autre contenu qui peut être ouvert avec les deux mots 2010 et 2007.

Cordialement.


Oui, vous avez raison Taterhead, ce que je fais est d'ajouter un contrôle de contenu à la zone de texte, le contrôle du contenu contiennent un altchunk (importer le contenu de docx externe), après enquête, je trouve que j'ajoute l'élément de contrôle de contenu (sdtBlock) à l'élément textBox dans la section de dessin (utilisé dans word2010) mais le contrôle du contenu est manquant dans la section picture utilisée dans le mot 2007 et c'est pourquoi j'obtiens un contrôle de contenu vide . Donc, je dois ajouter le contrôle de contenu (contenant le altchunk) aux textboxs à la fois dessin et de l'image, je tente de cloner l'élément SdtBlock,

textBoxContentForPict.Append(sdtBlock.CloneNode(true)); 

le problème que l'élément de altchunk est perdu dans le sdtBlock cloné. Si vous pouvez me aider à trouver une astuce pour ajouter le SdtBlock aux 2 textboxs à textBoxContentForDrawing.Append (sdtBlockWithAltchunck) et textBoxContentForPicture.Append (sdtBlockWithAltchunck), de cette manière que je peux obtenir le contenu correct dans un Word2007 2010.

Cordialement

Reagards

Répondre

1

peut-être votre //pict for word 2007 est inexact. Placez-le dans le mot pour 2010 bloc de dessin et voir si elle rend en 2010. Ou placez-le en dehors d'un bloc de contenu alternatif et assurez-vous qu'il rend en 2007.

1

Le problème est résolu, l'altchunk doit être ajouté avant le clonage le SdtBlock

Questions connexes