HTML5 Web Editor: Loading and Saving Documents
Web.TextControl provides LoadText and SaveText methods that accept file paths, FileStreams, and byte arrays for server-side document handling. LoadTextAsync defers loading until the HTML5 editor initializes fully. Server-side buttons must use an AJAX UpdatePanel to avoid full postbacks.

Documents can be easily loaded using ASP.NET code-behind code with the Web.TextControl.LoadText and Web.TextControl.SaveText methods that accept file names, FileStreams and memory variables such as byte and string arrays.
To load a document from a physical file, the following code is required:
TextControl1.LoadText(Server.MapPath("/documents/sample.docx"),
TXTextControl.Web.StreamType.WordprocessingML);
In order to save a document, the SaveText method is used:
TextControl1.SaveText(Server.MapPath("/output/" + sFilename),
TXTextControl.Web.StreamType.WordprocessingML);
Web.TextControl must be initialized completely in order to accept LoadText calls. Therefore, it exposes another method to load documents: Web.TextControl.LoadTextAsync. This method loads the text asynchronously when the HTML5 Web Editor is initialized and loaded completely.
In order to load a document in the Page_Load event of an ASPX Web Form, the following code is used:
TextControl1.LoadTextAsync(Server.MapPath("/documents/template.docx"),
TXTextControl.Web.StreamType.WordprocessingML);
Web.TextControl is updated and synchronized with the server automatically using the Web Sockets protocol. In case, you want to use other server-side (runat="server") elements such as buttons on the same form, make sure that they are embedded in an AJAX UpdatePanel and doesn't post back the complete page. A typical body would look like this:
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" Text="Load Document" />
</ContentTemplate>
</asp:UpdatePanel>
<cc1:TextControl ID="TextControl1" runat="server" />
</div>
</form>
</body>
More information and tutorials can be found in the documentation.
Related Posts
Creating an ASP.NET MVC DocumentViewer Application With Razor
Create a simple ASP.NET (MVC) application that uses the HTML5 document viewer.
Creating an ASP.NET MVC Application With Razor
This tutorial covers integrating TX Text Control .NET Server for ASP.NET into an ASP.NET MVC application. It walks through installing the TXTextControl.Web NuGet package, creating an MVC 5…
Creating Your First ASP.NET Reporting Application
The MailMerge and ServerTextControl components of TX Text Control .NET Server for ASP.NET enable server-side reporting in Web Forms. A template.docx merges with XML data via a button click…
Creating an ASP.NET Web Forms AJAX Application
TX Text Control .NET Server for ASP.NET integrates into Web Forms by dragging the TextControl component from the Visual Studio Toolbox onto a designer form. Setting Dock to Window fills the area.…
Using an Azure Load Balancer with Web.TextControl
When deploying Web.TextControl behind an Azure Load Balancer, the default 5-tuple session persistence breaks editor state. Configuring Source IP Affinity with a 2-tuple or 3-tuple distribution…
