IsEndOfSection
Inhalt
[
Ausblenden
]Paragraph.IsEndOfSection property
True, wenn dieser Absatz der letzte Absatz im istBody
(Haupttextgeschichte) von aSection
; sonst falsch.
public bool IsEndOfSection { get; }
Beispiele
Zeigt, wie der Inhalt eines Dokuments in ein Lesezeichen in einem anderen Dokument eingefügt wird.
public void InsertAtBookmark()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.StartBookmark("InsertionPoint");
builder.Write("We will insert a document here: ");
builder.EndBookmark("InsertionPoint");
Document docToInsert = new Document();
builder = new DocumentBuilder(docToInsert);
builder.Write("Hello world!");
docToInsert.Save(ArtifactsDir + "NodeImporter.InsertAtMergeField.docx");
Bookmark bookmark = doc.Range.Bookmarks["InsertionPoint"];
InsertDocument(bookmark.BookmarkStart.ParentNode, docToInsert);
Assert.AreEqual("We will insert a document here: " +
"\rHello world!", doc.GetText().Trim());
}
/// <summary>
/// Fügt den Inhalt eines Dokuments nach dem angegebenen Knoten ein.
/// </summary>
static void InsertDocument(Node insertionDestination, Document docToInsert)
{
if (insertionDestination.NodeType == NodeType.Paragraph || insertionDestination.NodeType == NodeType.Table)
{
CompositeNode destinationParent = insertionDestination.ParentNode;
NodeImporter importer =
new NodeImporter(docToInsert, insertionDestination.Document, ImportFormatMode.KeepSourceFormatting);
// Alle Knoten auf Blockebene im Hauptteil des Abschnitts durchlaufen,
// dann jeden Knoten klonen und einfügen, der nicht der letzte leere Absatz eines Abschnitts ist.
foreach (Section srcSection in docToInsert.Sections.OfType<Section>())
foreach (Node srcNode in srcSection.Body)
{
if (srcNode.NodeType == NodeType.Paragraph)
{
Paragraph para = (Paragraph)srcNode;
if (para.IsEndOfSection && !para.HasChildNodes)
continue;
}
Node newNode = importer.ImportNode(srcNode, true);
destinationParent.InsertAfter(newNode, insertionDestination);
insertionDestination = newNode;
}
}
else
{
throw new ArgumentException("The destination node should be either a paragraph or table.");
}
}
Siehe auch
- class Paragraph
- namensraum Aspose.Words
- Montage Aspose.Words