Walkthrough: Creating Your First Document-Level Customization For Word

This introductory walkthrough shows you how to create a document-level customization for Microsoft Office Word. The features that you create in this kind of solution are available only when a specific document is open. You cannot use a document-level customization to make application-wide changes, for example, displaying a new Ribbon tab when any document is open.

Applies to: The information in this topic applies to document-level projects for Word 2013 and Word 2010. For more information, see Features Available by Office Application and Project Type.

This walkthrough illustrates the following tasks:

  • Creating a Word document project.

  • Adding text to the document that is hosted in the Visual Studio designer.

  • Writing code that uses the object model of Word to add text to the customized document when it is opened.

  • Building and running the project to test it.

  • Cleaning up the project to remove unnecessary build files and security settings from your development computer.

Note

Your computer might show different names or locations for some of the Visual Studio user interface elements in the following instructions. The Visual Studio edition that you have and the settings that you use determine these elements. For more information, see Customizing Development Settings in Visual Studio.

Prerequisites

You need the following components to complete this walkthrough:

Creating the Project

To create a new Word document project in Visual Studio

  1. Start Visual Studio.

  2. On the File menu, point to New, and then click Project.

  3. In the templates pane, expand Visual C# or Visual Basic, and then expand Office/SharePoint.

  4. Under the expanded Office/SharePoint node, select the Office Add-ins node.

  5. In the list of project templates, select Word 2010 Document or Word 2013 Document.

  6. In the Name box, type FirstDocumentCustomization.

  7. Click OK.

    The Visual Studio Tools for Office Project Wizard opens.

  8. Select Create a new document, and click OK.

    Visual Studio creates the FirstDocumentCustomization project, and adds the FirstDocumentCustomization document and ThisDocument code file to the project. The FirstDocumentCustomization document is opened automatically in the designer.

Closing and Reopening the Document in the Designer

If you deliberately or accidentally close the document in the designer while you are developing your project, you can reopen it.

To close and reopen the document in the designer

  1. Close the document by clicking the Close button (X) for the designer window.

  2. In Solution Explorer, right-click the ThisDocument code file, and click View Designer.

    - or -

    In Solution Explorer, double-click the ThisDocument code file.

Adding Text to the Document in the Designer

You can design the user interface (UI) of your customization by modifying the document that is open in the designer. For example, you can add text, tables, or Word controls. For more information about how to use the designer, see Office Projects in the Visual Studio Environment.

To add text to your document by using the designer

  • In the document that is open in the designer, type the following text.

    This text was added by using the designer.

Adding Text to the Document Programmatically

Next, add code to the ThisDocument code file. The new code uses the object model of Word to add a second paragraph of text to the document. By default, the ThisDocument code file contains the following generated code:

  • A partial definition of the ThisDocument class, which represents the programming model of the document and provides access to the object model of Word. For more information, see Document Host Item and Word Object Model Overview. The remainder of the ThisDocument class is defined in a hidden code file that you should not modify.

  • The ThisDocument_Startup and ThisDocument_Shutdown event handlers. These event handlers are called when the document is opened and closed. Use these event handlers to initialize your customization when the document is opened, and to clean up resources used by your customization when the document is closed. For more information, see Events in Office Projects.

To add a second paragraph of text to the document by using code

  1. In Solution Explorer, right-click ThisDocument, and then click View Code.

    The code file opens in Visual Studio.

  2. Replace the ThisDocument_Startup event handler with the following code. When the document is opened, this code adds a second paragraph of text to the document.

    Private Sub ThisDocument_Startup(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Startup
        Me.Paragraphs(1).Range.InsertParagraphAfter()
        Me.Paragraphs(2).Range.Text = "This text was added by using code." 
    End Sub
    
    private void ThisDocument_Startup(object sender, System.EventArgs e)
    {
        this.Paragraphs[1].Range.InsertParagraphAfter();
        this.Paragraphs[2].Range.Text = "This text was added by using code.";
    }
    

    Note

    This code uses the index value 1 to access the first paragraph in the Paragraphs property. Although Visual Basic and Visual C# use 0-based arrays, the lower array bounds of most collections in the Word object model is 1. For more information, see Writing Code in Office Solutions.

Testing the Project

To test your document

  1. Press F5 to build and run your project.

    When you build the project, the code is compiled into an assembly that is associated with the document. Visual Studio puts a copy of the document and the assembly in the build output folder for the project, and it configures the security settings on the development computer to enable the customization to run. For more information, see Building Office Solutions.

  2. In the document, verify that you see the following text.

    This text was added by using the designer.

    This text was added by using code.

  3. Close the document.

Cleaning up the Project

When you finish developing a project, you should remove the files in the build output folder and the security settings created by the build process.

To clean up the completed project on your development computer

  • In Visual Studio, on the Build menu, click Clean Solution.

Next Steps

Now that you have created a basic document-level customization for Word, you can learn more about how to develop customizations from these topics:

See Also

Concepts

Office Solutions Development Overview

Automating Word by Using Extended Objects

Other Resources

Word Solutions

Programming Document-Level Customizations

Word Object Model Overview

Office UI Customization

Building Office Solutions

Deploying an Office Solution

Office Project Templates Overview