Back to Devexpress

How to: Merge several documents content into a single document

aspnet-119373-components-rich-text-editor-examples-how-to-merge-several-documents-content-into-a-single-document.md

latest2.1 KB
Original Source

How to: Merge several documents content into a single document

  • Aug 23, 2023

This example demonstrates how to merge several documents content into a single document and display the resulting content in ASPxRichEdit.

To merge documents, use the non-visual RichEditDocumentServer component.

Call the Open(String, DocumentFormat, Func<Stream>) method tTo open the resulting stream in ASPxRichEdit.

aspx
<dx:ASPxRichEdit ID="ASPxRichEdit1" runat="server" WorkDirectory="~\App_Data\WorkDirectory" />
csharp
using DevExpress.Web.Office;
using DevExpress.XtraRichEdit;

// ...
DocumentManager.CloseDocument("testID");
MemoryStream stream = new MemoryStream();
RichEditDocumentServer server = new RichEditDocumentServer();
server.LoadDocument(System.Web.HttpContext.Current.Server.MapPath("Doc 1.docx"), DocumentFormat.OpenXml);
server.Document.AppendDocumentContent(System.Web.HttpContext.Current.Server.MapPath("Doc 2.docx"), DocumentFormat.OpenXml);
server.SaveDocument(stream, DocumentFormat.OpenXml);
stream.Position = 0;
ASPxRichEdit1.Open("testID", DevExpress.XtraRichEdit.DocumentFormat.OpenXml, () => { return stream; });
vb
Imports DevExpress.Web.Office
Imports DevExpress.XtraRichEdit

' ...
DocumentManager.CloseDocument("testID")
Dim stream As New MemoryStream()
Dim server As New RichEditDocumentServer()
server.LoadDocument(System.Web.HttpContext.Current.Server.MapPath("Doc 1.docx"), DocumentFormat.OpenXml)
server.Document.AppendDocumentContent(System.Web.HttpContext.Current.Server.MapPath("Doc 2.docx"), DocumentFormat.OpenXml)
server.SaveDocument(stream, DocumentFormat.OpenXml)
stream.Position = 0
ASPxRichEdit1.Open("testID", DevExpress.XtraRichEdit.DocumentFormat.OpenXml, Function() stream)