Question

Je veux créer un document Word 2007 sans utiliser le modèle d'objet. Je préférerais donc de le créer en utilisant le format XML ouvert. Jusqu'à présent, je suis en mesure de créer le document. Maintenant, je veux ajouter un contrôle de contenu et la carte au format XML. Quelqu'un peut-il me guider au sujet de la même ???

Était-ce utile?

La solution

Anoop,

Vous avez dit que vous êtes en mesure de creat le document à l'aide OpenXmlSdk. Avec cette hypothèse, vous pouvez utiliser le code suivant pour créer le contrôle de contenu à ajouter à l'élément Wordprocessing.Body de votre document.

//praragraph to be added to the rich text content control
Run run = new Run(new Text("Insert any text Here") { Space = StaticTextConstants.Preserve });
Paragraph paragraph = new Paragraph(run);

SdtProperties sdtPr = new SdtProperties(
        new Alias { Val = "MyContentCotrol" },
        new Tag { Val = "_myContentControl" });
SdtContentBlock sdtCBlock = new SdtContentBlock(paragraph);
SdtBlock sdtBlock = new SdtBlock(sdtPr, sdtCBlock);

//add this content control to the body of the word document
WordprocessingDocument wDoc = WordprocessingDocument.Open(path, true); //path is where your word 2007 file is
Body mBody = wDoc.MainDocumentPart.Document.Body;
mBody.AppendChild(sdtBlock);

wDoc.MainDocumentPart.Document.Save();
wDoc.Dispose();

J'espère que cela répond à une partie de votre question. Je ne comprenais pas ce que vous Ment par « la carte au format XML ». Vouliez-vous dire à dire que vous voulez créer CustomXmlBlock et ajoutez le ContentControl à elle?

Autres conseils

Regardez le contenu Control Toolkit Word sur www.codeplex.com.

Voici une brève explication sur la façon de faire ce que vous essayez.

  1. Vous devez avoir accès à l'onglet développeur sur le ruban Word. Pour obtenir ce clic de travail sur le bureau (thingy Round) dans le coin en haut à gauche et sélectionnez Options Word au bas du menu. Sur la première page d'options il y a une case à cocher pour afficher la barre d'outils de développement.

  2. Utilisez la barre d'outils développeur pour ajouter les contrôles de contenu que vous souhaitez sur la page. Cliquez sur le bouton Propriétés dans la section des contrôles de contenu de la barre des développeurs et définir les propriétés de nom et tag (je tiens à nommer les champs de nom et étiquette avec le même nom).

  3. Enregistrez et fermez le document Word.

  4. Ouvrez la boîte à outils de contrôle de contenu puis ouvrez votre document avec la boîte à outils. Utilisez la douleur à la main gauche pour créer une xml personnalisé pour créer un lien vers vos commandes.

  5. Utilisez la vue bind pour faire glisser et déposer les correspondances entre votre XML personnalisés et les contrôles personnalisés qui sont affichés dans le panneau de droite de la boîte à outils.

  6. Vous pouvez utiliser le openxml sdk 1.0 ou 2.0 (encore en ctp) pour ouvrir votre document Word dans le code et accéder au fichier XML personnalisé qui est contenu dans le cadre du document Word.

Si vous voulez jeter un oeil à la façon dont votre document Word semble que xml. Faites une copie de votre document Word, puis renommez-à-dire « a.zip ». Double-cliquez sur le fichier zip puis naviguer dans la structure du dossier. Le contenu principal du document Word est maintenu dans le dossier de mot dans un fichier appelé « document.xml ». La partie XML personnalisée du document est maintenu dans le dossier CustomXML et se trouve généralement dans le fichier nommé « item1.xml ».

J'espère que cette brève explication vous lever et courir.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top