Click or drag to resize

ParagraphClone Method

Clones this element instance.

Namespace: SautinSoft.Document
Assembly: SautinSoft.Document (in SautinSoft.Document.dll) Version: 2024.4.24
Syntax
public Paragraph Clone(
	bool cloneDescendants
)

Parameters

cloneDescendants  Boolean
to clone all descendants.

Return Value

Paragraph
The cloned element.
Remarks

This method serves as a copy constructor for elements. The cloned element has no parent, but belongs to the same document as the original element.

If you want to insert this element into another document, then you should first import it into another document with ImportT(T, Boolean) method and then insert the imported element.

Example

See Developer Guide: How to clone an element in DOCX document

How to clone a paragraph in DOCX document in C#
using System;
using SautinSoft.Document;
using System.IO;
using System.Linq;
using System.Text;

namespace Sample
{
    class Sample
    {
        static void Main(string[] args)
        {
            // Get your free 30-day key here:   
            // https://sautinsoft.com/start-for-free/

            CloningElement();
        }

        /// <summary>
        /// How to clone an element in DOCX document.
        /// </summary>
        /// <remarks>
        /// Details: https://sautinsoft.com/products/document/help/net/developer-guide/cloning-element-net-csharp-vb.php
        /// </remarks>
        static void CloningElement()
        {
            string filePath = @"..\..\..\Parsing.docx";
            string cloningFile = "Cloning.docx";
            DocumentCore dc = DocumentCore.Load(filePath);

            // Clone section.
            dc.Sections.Add(dc.Sections[0].Clone(true));

            // Clone paragraphs.
            foreach (Block item in dc.Sections[0].Blocks)
                dc.Sections.Last().Blocks.Add(item.Clone(true));

            // Save the result.
            dc.Save(cloningFile);

            // Show the result.
            System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(filePath) { UseShellExecute = true });
            System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(cloningFile) { UseShellExecute = true });
        }
    }
}
How to clone a paragraph in DOCX document in VB.Net
Imports System
Imports SautinSoft.Document
Imports System.IO
Imports System.Linq
Imports System.Text

Module Sample
    Sub Main()
        CloningElement()
    End Sub
    ''' Get your free 30-day key here:   
    ''' https://sautinsoft.com/start-for-free/
    ''' <summary>
    ''' How to clone an element in DOCX document.
    ''' </summary>
    ''' <remarks>
    ''' Details: https://sautinsoft.com/products/document/help/net/developer-guide/cloning-element-net-csharp-vb.php
    ''' </remarks>
    Sub CloningElement()
        Dim filePath As String = "..\..\..\Parsing.docx"
        Dim cloningFile As String = "Cloning.docx"
        Dim dc As DocumentCore = DocumentCore.Load(filePath)

        ' Clone section.
        dc.Sections.Add(dc.Sections(0).Clone(True))

        ' Clone paragraphs.
        For Each item As Block In dc.Sections(0).Blocks
            dc.Sections.Last().Blocks.Add(item.Clone(True))
        Next item

        ' Save the result.
        dc.Save(cloningFile)

        ' Show the results.
        System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(filePath) With {.UseShellExecute = True})
        System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(cloningFile) With {.UseShellExecute = True})
    End Sub
End Module
See Also