InsertFile Word c#

26/05/2008 - 19:55 von Roland Scheler | Report spam
Hallo zusammen,

Wieso werden mit dem folgenden Code in dem Zieldokument keine Linien in
die Kopfzeile eingefügt, die in dem Quelldokument aber definitiv
vorhanden sind?
Wieso funktioniert das allerdings, wenn man das Quelldokument manuell
über das Menü einfügt?

// header: Pfad zum Quelldokument (Kopfzeileninhalt, der in dem Hauptteil
einer gewöhnlichen .DOC liegt).

// doc: Zieldokument.

Word.Range range doc.Sections[1].Headers[Word.WdHeaderFooterIndex.wdHeaderFooterFirstPage].Range;
range.FormattedText.Text = "";
range.ParagraphFormat.SpaceAfter = 0;
range.InsertFile(header, ref missing, ref missing, ref missing, ref
missing);

Der Code stammt aus C# und steuert Word über eine die Schnittstelle
fern. Tabellen und Text werden problemlos eingefügt, ebenso Grafiken.
Lediglich die Linien fehlen.


Gruß
Roland Scheler
 

Lesen sie die antworten

#1 Frank Dzaebel
26/05/2008 - 21:49 | Warnen spam
Hallo Roland,

Wieso werden mit dem folgenden Code in dem Zieldokument keine Linien in
die Kopfzeile eingefügt, die in dem Quelldokument aber definitiv vorhanden
sind?



Funktioniert bei mir aber [Vista Ultimate, (.NET 2.0 SP1),
.NET 3.5 SP1, VS 2008, Office 2007]

private void Form1_Load(object sender, EventArgs e)
{
Word.Application app = new Word.Application();
string templatePath = @"<...MeinPfad...>\TestDoc.docx";
string header = @"<...MeinPfad...>\Puff.docx";
app.Visible = true;
object objPath = templatePath; object n = Missing.Value;
Document doc = app.Documents.Add(ref objPath, ref n, ref n, ref n);

Word.Range range =
doc.Sections[1].Headers[Word.WdHeaderFooterIndex.wdHeaderFooterFirstPage].Range;
range.FormattedText.Text = "";
range.ParagraphFormat.SpaceAfter = 0;
range.InsertFile(header, ref n, ref n, ref n, ref n);
}


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen