Articles in this section
Category / Section

How to create Word document in UWP?

2 mins read

Syncfusion Essential DocIO is a UWP Word library used to create, read, and edit Word documents programmatically without Microsoft Word or interop dependencies. Using this library, you can create a Word document in UWP.

Steps to create Word document programmatically in UWP:

  1. Create a new C# Blank App (Universal Windows) project.

Create UWP Word application in Visual Studio

  1. Install the Syncfusion.DocIO.UWP NuGet package as a reference to your UWP application from NuGet.org.

Add UWP DocIO NuGet package reference to the project

  1. Add a new button in the MainPage.xaml as shown below.

XAML

<Page
   x:Class="CreateWordSample.MainPage"
   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
   xmlns:local="using:CreateWordSample"
   xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
   xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
   mc:Ignorable="d">
   <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
         <Button x:Name="button" Content="Create Document" Click="OnButtonClicked" HorizontalAlignment="Center" VerticalAlignment="Center"/>
   </Grid>
</Page>
  1. Include the following namespaces in the Mainpage.xaml.cs file.

C#

using Syncfusion.DocIO;
using Syncfusion.DocIO.DLS;
using Windows.Storage.Pickers;
using Windows.Storage;
using Windows.Storage.Streams;
  1. Include the below code snippet in the click event of the button in MainPage.xaml.cs, to create a Word document and save the Word document as a physical file and open the file for viewing.

C#

//Creates a new instance of WordDocument (Empty Word Document)
using (WordDocument document = new WordDocument())
{
    //Adds a section and a paragraph to the document
    document.EnsureMinimal();
    //Appends text to the last paragraph of the document
    document.LastParagraph.AppendText("Hello World");
    MemoryStream stream = new MemoryStream();
    //Saves the Word document to MemoryStream
    await document.SaveAsync(stream, FormatType.Docx);
    //Saves the stream as Word document file in local machine
    Save(stream, "Result.docx");
    // Saves the Word document
    async void Save(MemoryStream streams, string filename)
    {
        streams.Position = 0;
        StorageFile stFile;
        if (!(Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons")))
        {
            FileSavePicker savePicker = new FileSavePicker();
            savePicker.DefaultFileExtension = ".docx";
            savePicker.SuggestedFileName = filename;
            savePicker.FileTypeChoices.Add("Word Documents", new List<string>() { ".docx" });
            stFile = await savePicker.PickSaveFileAsync();
        }
        else
        {
            StorageFolder local = Windows.Storage.ApplicationData.Current.LocalFolder;
            stFile = await local.CreateFileAsync(filename, CreationCollisionOption.ReplaceExisting);
        }
        if (stFile != null)
        {
            using (IRandomAccessStream zipStream = await stFile.OpenAsync(FileAccessMode.ReadWrite))
            {
                // Write compressed data from memory to file
                using (Stream outstream = zipStream.AsStreamForWrite())
                {
                    byte[] buffer = streams.ToArray();
                    outstream.Write(buffer, 0, buffer.Length);
                    outstream.Flush();
                }
            }
        }
        // Launch the saved Word file
        await Windows.System.Launcher.LaunchFileAsync(stFile);
    }
}

A complete working example to create Word document in UWP can be downloaded from Create-Word-file.zip.

By executing the program, you will get the Word document as follows.

Generated or created in UWP Word document

Take a moment to peruse the documentation, where you can find basic Word document processing options along with features like mail merge, merge and split documents, find and replace text in the Word document and protect the Word documents with code examples.

Explore more about the rich set of Syncfusion Word Framework features.

An online example to generate or create Word document.

See Also:

Create Word document in Xamarin

Create Word document in Xamarin.Android

Create Word document in Windows Forms

Create Word document in WPF

Create Word document in ASP.NET Core

Create Word document in ASP.NET MVC

Note:

Starting with v16.2.0.x, if you reference Syncfusion assemblies from trial setup or from the NuGet feed, include a license key in your projects. Refer to link to learn about generating and registering Syncfusion license key in your application to use the components without trail message.

 

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please sign in to leave a comment
Access denied
Access denied