2010-12-19 3 views
6

J'essaie d'insérer une Table dans un TableCell, mais lorsque j'essaie de l'ouvrir dans MS Word, j'obtiens un message du type: "a <p> is required before a </tc>".Tables imbriquées OpenXML

Lorsque j'ouvre le fichier en mode de compatibilité, le formatage de la table semble parfait mais les lignes de la table sont manquantes. Insérer du texte simple dans la cellule fonctionne bien, le problème ne se produit que lorsque j'essaie d'insérer une table entière. L'insertion du tableau dans le document en dehors de l'autre tableau fonctionne également correctement.

Répondre

12

Si vous créez une structure de table imbriquée dans Word, et regardez le XML résultant, vous verrez quelque chose comme:

 <w:tc> 
     <w:tcPr> 
      <w:tcW w:w="4621" w:type="dxa"/> 
     </w:tcPr> 
     <w:tbl>..</w:tbl> 
     <w:p/> 
     </w:tc> 

Selon le message, ressemble vous avez besoin < w: p /> après votre table, et avant la balise tc de fermeture.

+1

Je le fais en code. J'ai créé un nouveau paragraphe ajouté à la TableCell et ajouté la Table au Paragraphe, mais j'ai ensuite obtenu une erreur non spécifiée. Va poster un exemple de code demain. – flayn

+1

N'ajoutez pas le w: tbl à un w: p. Ajoutez un w: tbl directement au w: tc, puis ajoutez un nouveau w: p au w: tc. – JasonPlutext