IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Récupérer tous les sdtContent d'un document Word+Open XML SDK


Sujet :

ASP.NET

  1. #1
    Membre éclairé Avatar de Ishizaki
    Inscrit en
    Avril 2006
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 262
    Par défaut Récupérer tous les sdtContent d'un document Word+Open XML SDK
    Bonjour tout le monde, j'ai un souci pour récupérer tous les ContentControl d'un fichier Word 2007.

    Quand je regarde le fichier XML que je possède, j'ai 154 balises <w:sdtContent>.

    Quand je fais ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    //myDoc est un Document d'un MainDocumentPart
     
    IEnumerable<SdtContentBlock> iEnumSdtContentBlock = myDoc.Body.Descendants<SdtContentBlock>();
    Je n'en récupère que 18... J'ai l'impression qu'il ne parcoure pas toutes les ramifications enfantes du document...

    Je pensais qu'il y avait une solution assez simple pour récupérer toutes les balises d'un certain type mais là je ne vois pas -__-.

    Merci de votre aide !

  2. #2
    Membre éclairé Avatar de Ishizaki
    Inscrit en
    Avril 2006
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 262
    Par défaut
    J'ai trouvé comment faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    public void ProcessContentBlock(OpenXmlElement elt)
            {
                if (elt.HasChildren)
                {
                    foreach (OpenXmlElement item in elt.ChildElements)
                    {
                        if (item is SdtBlock)
                        {   
                            //On recherche les enfants : SdtContent
                            IEnumerable<SdtContentBlock> iEnumerableStdContent = from sdtContent in item.ChildElements
                                                                                 where sdtContent is SdtContentBlock
                                                                                 select (SdtContentBlock)sdtContent;
                            if (iEnumerableStdContent.Count() > 0)
                            {
                                //Code...
                            }
                        }                       
     
     
                        ProcessContentBlock(item);
                    }
                }       
            }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SP-2007] Récupérer tous les documents d'un site SharePoint 2007
    Par Tiji78 dans le forum SharePoint
    Réponses: 3
    Dernier message: 26/09/2012, 07h57
  2. [RegEx] Récupérer tous les noms d'image d'un document
    Par Sanceray3 dans le forum Langage
    Réponses: 2
    Dernier message: 19/01/2012, 22h15
  3. [WD-2010] [VBA]Suppression de tous les tableaux d'un document word
    Par azerty1989 dans le forum VBA Word
    Réponses: 3
    Dernier message: 27/07/2011, 16h53
  4. Réponses: 7
    Dernier message: 08/01/2005, 13h24
  5. [Plugin] Récupérer tous les fichiers *.java d'un workspace
    Par Satch dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 02/06/2004, 12h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo