Voglio creare un documento Word 2007 senza utilizzare il modello a oggetti. Quindi preferirei crearlo usando il formato aperto xml. Finora sono stato in grado di creare il documento. Ora voglio aggiungere un controllo contenuto e mapparlo a xml. Qualcuno mi può guidare per lo stesso ???Come aggiungere il controllo del contenuto in un documento Word 2007 utilizzando OpenXML
risposta
Anoop,
Lei ha detto che si è in grado di creat il documento con OpenXmlSdk. Con questa ipotesi, è possibile utilizzare il seguente codice per creare il controllo del contenuto da aggiungere all'elemento Wordprocessing.Body del documento.
//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();
Spero che questo risponda a una parte della tua domanda. Non ho capito cosa stai dicendo con "Mappalo in XML". Intendevi dire che vuoi creare CustomXmlBlock e aggiungere il ContentControl ad esso?
Dai un'occhiata a Word Content Control Toolkit su www.codeplex.com.
Ecco una breve spiegazione su come eseguire ciò che si sta tentando.
È necessario accedere alla scheda sviluppatore sulla barra multifunzione di Word. Per farlo funzionare, fai clic su Office (Round thingy) nell'angolo in alto a sinistra e seleziona Opzioni di Word nella parte inferiore del menu. Nella prima pagina delle opzioni c'è una casella di controllo per mostrare la barra degli strumenti dello sviluppatore.
Utilizzare la barra degli strumenti di sviluppo per aggiungere i controlli del contenuto che si desidera sulla pagina. Fare clic sul pulsante Proprietà nella sezione Controlli contenuti della barra di sviluppo e impostare il nome e le proprietà dei tag (io rimango a denominare i campi nome e tag con lo stesso nome).
Salvare e chiudere il documento word.
Aprire il toolkit di controllo del contenuto e quindi aprire il documento con il toolkit. Usa il dolore della mano sinistra per creare alcuni xml personalizzati da collegare ai tuoi controlli.
Ora utilizzare la vista di associazione per trascinare e rilasciare i mapping tra il proprio xml personalizzato e i controlli personalizzati visualizzati nel pannello destro del toolkit.
È possibile utilizzare openxml sdk 1.0 o 2.0 (sempre in ctp) per aprire il documento word nel codice e accedere al file xml personalizzato contenuto come parte del documento word.
Se si desidera avere un'idea di come il documento di Word appare come xml. Fai una copia del tuo documento word e poi rinominalo per dire "a.zip". Fare doppio clic sul file zip e quindi navigare nella struttura delle cartelle. Il contenuto principale del documento word è contenuto nella cartella word in un file chiamato "document.xml". La parte personalizzata xml del documento è contenuta nella cartella customXml e generalmente si trova nel file "item1.xml".
Spero che questa breve spiegazione ti renda attivo e funzionante.
Desidero aggiungere il controllo del contenuto a livello di codice utilizzando open xml sdk .... – Anoop
- 1. Come si modifica il contenuto di un controllo contenuto in Word 2007 con OpenXml SDK 2.0?
- 2. Come sbloccare un controllo contenuto utilizzando l'SDK OpenXML in un documento Word 2010?
- 3. documento duplicazione Word utilizzando OpenXml e C#
- 4. Ottieni un CheckBox in Word utilizzando OpenXML
- 5. Come inserire l'immagine nell'intestazione del documento OpenXML Word?
- 6. Sostituzione dei controlli del contenuto in OpenXML
- 7. Inserimento di newlines in Word utilizzando OpenXML
- 8. Ignora controllo grammaticale Microsoft Word 2007 per il codice
- 9. Streaming in memoria Documento Word che utilizza OpenXML SDK con ASP.NET produce un documento "corrotto"
- 10. Converti Word docx in Excel usando OpenXML
- 11. Documento corrotto dopo aver chiamato AddAlternativeFormatImportPart utilizzando OpenXml
- 12. Come inserisco o modifica un grafico a torta in un documento Word 2007, utilizzando vs 2010, C#?
- 13. Come creare un documento Word in WinRT
- 14. Converti documento Word in PDF utilizzando Java
- 15. Come leggere la dimensione del carattere di ogni parola in un documento word utilizzando il POI?
- 16. Firma diretta di un documento di Office Word utilizzando XML
- 17. Leggi contenuto documento word (* .doc) con tabelle ecc.
- 18. Utilizzo di DiagrammeR in un documento Word (generato utilizzando rMarkdown)
- 19. Come aggiungere caratteri pedice in paragrafi utilizzando Word Automation?
- 20. Rimuovi spaziatura dopo il paragrafo in Word 2007 con VSTO
- 21. Identificare l'intestazione in un documento ms word utilizzando C#
- 22. Converti documento Word in XSL-FO
- 23. testo Inserimento dopo un segnalibro in OpenXML
- 24. Libreria per convertire il testo del documento Word in HTML
- 25. OpenXML 2 SDK - Documento Word - Crea elenco puntato a livello di codice
- 26. Compilare un documento word in asp.net?
- 27. Cursore di posizione all'inizio/fine del documento Word
- 28. Impossibile trovare il documento di Microsoft Word in DCOM Config
- 29. Evento in cui Word 2007 modifica il tema
- 30. Come inserire i commenti a livello di codice in un documento di Microsoft Word?
Grazie per la risposta !! Anche se ho già un bell'articolo in MSDN che spiega anche la mappatura XML ... http://msdn.microsoft.com/en-us/library/dd469465.aspx – Anoop
In OpenXML SDK 2, Alias è ora SdtAlias. –