Wie fügen Sie Elemente ein zu einer Zeit auf, um eine neue Zeile ein word-Dokument mithilfe der word-interop
Ich versuche, diese drei Arten von Inhalt in ein word-doc. Dies ist, wie ich versuche, es jetzt zu tun. Jedoch, jedes Element ersetzt der letzten. Bilder hinzufügen fügt immer an den Anfang der Seite. Ich habe eine Schleife, die eine Funktion aufruft, erstellen Sie die überschriften und Tabellen, und fügt dann Bilder nach. Ich denke, das problem ist reicht. Ich benutze ein Start-Bereich von Objekt start = 0;
Wie kann ich diese hinzufügen, ein zu einer Zeit auf, um eine neue Zeile in das Dokument?
foreach (var category in observedColumns)
{
CreateHeadersAndTables();
createPictures();
}
Hinzufügen Von Kopfzeilen:
object start = 0;
Word.Range rng = doc.Range(ref start , Missing.Value);
Word.Paragraph heading;
heading = doc.Content.Paragraphs.Add(Missing.Value);
heading.Range.Text = category;
heading.Range.InsertParagraphAfter();
Hinzufügen Von Tabellen:
Word.Table table;
table = doc.Content.Tables.Add(rng, 1, 5);
Hinzufügen Von Bildern:
doc.Application.Selection.InlineShapes.AddPicture(@path);
InformationsquelleAutor sixshift04 | 2012-10-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einem einfachen Ansatz wird mit den Absätzen handhaben
Range
Objekte und legen Sie einfach einen neuen Absatz.Blick auf die API-Dokumentation zeigt, dass
Paragraphs
implementiert eineAdd
Methode:Quelle: http://msdn.microsoft.com/en-us/library/microsoft.office.interop.word.paragraphs.add(v=office.14).aspx
So, es wird straight nach vorne, fügt neue Inhalte in das Dokument.
Vollständigkeit halber beigefügt habe ich ein Beispiel, das zeigt, wie eine Lösung funktionieren könnte. Die Probe durchläuft eine
for
- Schleife Durchlaufen und für jede iteration eingefügt:Probe hat ist implementiert als C# - Konsolenanwendung mit:
... das heißt, die MS-Word-Interop-API, die im Lieferumfang von MS Office 2013.
Sie sind nicht das einfügen neuer Zeilen, die Sie einfügen neue Absätze. Wie macht man fügt neue Zeilen innerhalb der gleichen Absatz?
InformationsquelleAutor Lasse Christiansen