Content controls in Word (2024)

  • Article

Learn how Microsoft Word 2013 content controls enable a larger range of structured document scenarios.

This topic provides information about changes to content controls in Microsoft Word 2013 and the document scenarios that those changes enable.

Structured documents

Structured documents are documents that control where content can appear on a document, what kind of content can appear in the document, and whether that content can be edited.

Here are some common scenarios for structured content in Microsoft Word:

  • A legal firm needs to create documents that contain legal language that should not be changed by the user.

  • A business needs to create a proposal cover page where only the title, author, and date are entered by the user.

  • A business needs to create invoices where the customer data is included in the invoice at predefined regions.

Using content controls to structure a document

Content controls are Microsoft Word entities that act as containers for specific content in a document. Individual content controls can contain content such as dates, lists, or paragraphs of formatted text. Content controls help you to create rich, structured blocks of content and are designed for use in templates that insert well-defined blocks into your documents, creating structured documents.

Content controls are ideal for creating structured documents because content controls help you fix the position of content, specify the kind of content (for example, a date, a picture, or text), restrict or enable editing, and add semantic meaning to content.

Content controls in Word 2010

The following content controls are available in Word 2010:

  • Rich Text

  • Plain Text

  • Picture

  • Building Block Gallery

  • Combo Box

  • Drop-Down List

  • Date

  • Checkbox

  • Group

Word 2010 content controls enable various potential structured document solutions, but in Word 2013 content controls enable a greater range of scenarios.

Content control improvements in Word 2013

In Word 2013, content controls provide three key improvements: improved visualization, support for XML Mapping for Rich Text content controls, and a new content control for repeating content.

Improved visualization

Word 2013 allows an individual content control to appear in one of three possible states:

Note

If not stated otherwise, this section discusses the visualization of content controls when the document is not viewed in Design Mode.You set the display mode for a content control by using the Show as drop-down list control in the Content Control Properties dialog box.

Figure 1. Content Control Properties dialog box

Content controls in Word (1)

You can also set the display mode for a content control by using the Word 2013 object model (discussed later in New Word 2013 content control object model members).

Bounding box

The default rendering for content controls in Word 2013 is to preserve the look of content controls as they appear in Word 2007 and Word 2010; that is, as a bounding box. When a content control is set to show as Bounding Box, the display changes depending upon the following user interaction:

  • When the content control does not have the focus, no visualization occurs

  • On mouse-over, the content control appears as a shaded rectangle

Figure 2. Content control on mouse-over

Content controls in Word (2)

  • When the content control has the focus (when the user chooses the content control), the control appears as a "bounding box" (with a line around the content and the title showing, if a title has been set)

Figure 3. Content control with focus

Content controls in Word (3)

Start/End tags

When the content control is set to show as Start/End tag, the tags are displayed regardless of user interaction, and the title never appears; but buttons, such as the Drop-Down List button, appear on mouse over.

Figure 4. Content control set to show as start/end tags

Content controls in Word (4)

None

When the content control is set to show as None, the content control is not displayed.

Content control colorization

In addition to enabling a different kind of display for a content control, Word 2013 also helps you to set the color for an individual content control. You set the color of a content control by using the Color button in the Content Control Properties dialog box.

You can also set the color of a content control by using the Word 2013 object model (discussed later in New Word 2013 content control object model members).

Figure 5. Content Control Properties dialog box

Content controls in Word (5)

Support for XML mapping for rich text content controls

Word 2013 helps you to map the content of rich text content controls and document building block content controls to the XML data store. To do this, you set the XML mapping for the content control. You can set this property by using the existing XMLMapping.SetMapping method in the object model. Within the custom XML part, the custom XML is stored as flat Open XML markup converted into a string (by using standard XML encoding), so that it can be stored as a text node in the custom XML part. However, the mapping continues to have the limitation that it can only successfully map to leaf nodes or attributes.

Note

Rich text content controls cannot contain other rich text content controls. If one exists inside of another (for example, because of file format manipulation, copy and paste, and so on), it is unlinked until it is no longer contained inside a mapped rich text control.

For more information about how to set up XML mapping, see the section New Word 2013 content control object model members later in this topic.

Supporting repeating content

In addition to visualization enhancements and support for XML mapping to rich text content controls, Word 2013 also adds a new content control that enables you to repeat content. The repeating section content control repeats the content contained within it, including other content controls.

You insert the repeating section content control around entire paragraphs or table rows. Once the control surrounds a section, you can insert copies of the section above or below the contained section.

Figure 6. Repeating section content control context menu

Content controls in Word (6)

You can repeat the inserted section by using either the control on the end of the content control (displayed as a button with a plus sign (Content controls in Word (7))) or by choosing a command on the context menu, as shown in Figure 6. The repeated content becomes a separate section of the control that you can assign a title by using the Content Control Properties dialog box.

Figure 7. Assign a section title in the Content Control Properties dialog box

Content controls in Word (8)

Once you have given the section a title, if you select Allow users to add and remove sections in the Content Control Properties dialog box, users can add or delete the section by name.

Figure 8. Use the repeating section content control context menu to delete a section

Content controls in Word (9)

When a repeating section content control surrounds other content controls, the enclosed content controls are repeated in each new item; but any such content controls have their contents reset to placeholder text. There are two exceptions where child control contents are preserved:

  • When a child control is a repeating section control.

  • When a child control is XML-mapped to a node outside the repeating section content control.

Figure 9. Repeating section content control containing child controls before repeat

Content controls in Word (10)

Figure 10. Repeating section content control containing child controls after repeat

Content controls in Word (11)

Repeating section content controls around XML-mapped controls

For XML mappings that are contained in a repeating section, Word 2013 maps them as follows.

If the mapping does not intersect with an item in the node set as part of its parent chain, the binding is an "absolute binding" and shows the same content in all repeating section items.

If the mapping does intersect with an item in the node set as part of its parent chain, the binding is a "relative binding", and is remapped as follows:

  • The absolute binding for the node is determined (flattening out any query expressions)─this should happen on initial mapping

  • The axis of the binding that intersects with the node set is removed

  • The remainder of the XPath is evaluated relative to the XPath of the repeating section content item

For example, the following mappings might occur:

  • The repeating section is mapped to \root\next\path

  • The control in the sample item is mapped to \root\next\path[2]\baz

  • Word matches \root\next\path[2] to an item in the node set

The binding is therefore evaluated as .\baz, where the base is the node of the repeating content item.

The following suggestions for working with repeating content controls can help you prevent data loss and avoid frustration.

Working with repeating section content controls that are mapped to XML data

If you insert a repeating section content control that is mapped to XML data, every time your user reopens the document, Word recreates the repeating section items, based on the information in the data store. Even if you save the document, any changes that the user makes in the repeating section items in the document that aren't also mapped into the data store are lost.

To help prevent this from happening, lock the repeating section content control and allow the user to edit only in unlocked child content controls that are mapped to the XML as well.

Binding a repeating section content control to a table

If you want to bind a repeating section content control to a table, insert the table and then the insert repeating section content control, and not the other way around. (Otherwise, you won't be able to select only the table).

Nesting repeating section content controls within a table

Nesting repeating section content controls tightly within a table (for example, when the end of the parent and child repeating section content control is in the same cell) causes the outer repeating section to be deleted when the inner section has an item added or removed.

You can prevent this from happening by adding a paragraph marker between the end of one repeating section content control and the next. To hide the paragraph marker, deselect the Show/Hide option on the Home tab of the ribbon.

Open XML File Format schema additions

The following elements were added to the WordprocessingML Open XML File Format schema.

Table 1. New elements in the WordprocessingML Open XML File Format schema for content controls

ElementDescription
<w:appearance>
<w:appearance> is a child element of <w:sdtPr>. The following values are valid for the val attribute:
<w:appearance val= boundingBox|tags|hidden. The default value is boundingBox.
<w:color>
<w:color> is a child element of <w:sdtPr>. The content model matches the existing CT_Color complex type. The default value is the color used in Word 2010.

New Word 2013 content control object model members

With the new enhancements and additions to content controls in Word 2013, the object model for Word has been updated to allow for programmatic manipulation of the new feature set. In addition, changes have also been made to the underlying Open XML File Format for word processing documents.

The following sections provide more information about the specific object model changes related to each content control enhancement.

Visualization enhancements

Several object model additions are included in Word 2013 for content control visualization enhancements. The following table list new members of the ContentControl object for visualization.

Table 2. New ContentControl object members

MemberDescription
. Appearance as WdContentControlAppearance
Gets or sets the visualization of the content control.
. Color as WdColor
Gets or sets the color of the content control.

The following table lists constants in the new WdContentControlAppearance enumeration.

Table 3. New WdContentControlAppearance enumeration constants

ConstantDescription
wdContentControlBoundingBox
Represents a content control shown as a shaded rectangle/bounding box (with optional title).
wdContentControlTags
Represents a content control shown as start/end markers.
wdContentControlHidden
Represents a content control that is not shown.

Code sample

The following code sample shows how to create rich text content controls and set visualization programmatically.

Sub testVisualization() Dim objcc As ContentControl Dim objRange As Range ' Get the first paragraph as a range object. Set objRange = ActiveDocument.Paragraphs(1).Range ' Create a rich text content control around the first paragraph. Set objcc = ActiveDocument.ContentControls.Add(wdContentControlRichText, objRange) objcc.Title = "Default Bounding Box" ' Set visualization to the default. objcc.Appearance = wdContentControlBoundingBox ' Create a new paragraph. objRange.InsertParagraphAfter Set objRange = ActiveDocument.Paragraphs(2).Range ' Create a rich text content control around the second paragraph. Set objcc = ActiveDocument.ContentControls.Add(wdContentControlRichText, objRange) objcc.Title = "Non Bounding" ' Set visualization to invisible. objcc.Appearance = wdContentControlHidden ' Create a new paragraph. objRange.InsertParagraphAfter Set objRange = ActiveDocument.Paragraphs(3).Range ' Create a rich text content control around the third paragraph. Set objcc = ActiveDocument.ContentControls.Add(wdContentControlRichText, objRange) objcc.Title = "Tags Only with Pink color" ' Set visualization to Start/End tags with pink color. objcc.Appearance = wdContentControlTags objcc.Color = wdColorPinkEnd Sub

XML mapping

No additions were made to the Word 2013 object model to accommodate rich text mapping to XML nodes in the document data store. Instead, use the existing object model to map a rich text content control to an XML node in the document data store. Additionally, no changes were made to the underlying Open XML File Format WordprocessingML schema as part of the newly included rich text content control support specifically for XML mapping.

Code sample

The following code sample shows how to map a rich text content control to an XML node programmatically.

Sub testRichBinding() Dim objRange As Range Dim objcc As ContentControl Dim objCustomPart As CustomXMLPart Dim blnMap As Boolean ' Add a custom XML part to the data store. Set objCustomPart = ActiveDocument.CustomXMLParts.Add ' Load XML fragment into the custom XML part. objCustomPart.LoadXML ("<x>Rich Text Databinding</x>") ' Get the first paragraph as a range object. Set objRange = ActiveDocument.Paragraphs(1).Range ' Create a rich text content control around the first paragraph. Set objcc = ActiveDocument.ContentControls.Add(wdContentControlRichText, objRange) ' Bind the XML node to the rich text content control. blnMap = objcc.XMLMapping.SetMapping("/x") ' Return whether mapping worked. MsgBox objcc.XMLMapping.IsMappedEnd Sub

Repeating section content controls represented in the object model

The repeating section content control is available in the object model by using the following additions to the ContentControl object and the new RepeatingSectionItem and RepeatingSectionItemColl objects. Table 4 lists the most important new members of the ContentControl object for repeating section content controls.

Table 4. ContentControl object members

MemberDescription
AllowInsertDeleteSection as Boolean
Gets or sets whether users can add or remove sections from the content control by using the UI. If this property is called for a content control that is not of type repeating section, the call fails with the following error message: "This property can only be used with repeating section content controls."
RepeatingSectionItemTitle as String
Gets or sets the name of repeating section items used in the context menu. If this property is called for a content control that is not of type repeating section, the call fails with: "This property can only be used with repeating section content controls."
InsertRepeatingSectionItemBefore as ContentControl
Adds a repeating section item before the current item and returns the new repeating section item. If this method is called for a content control that is not of type repeating section item, the call fails with: "This property can only be used with repeating section item content controls."
InsertRepeatingSectionItemAfter as ContentControl
Adds a repeating section item after the current item and returns the new repeating section item. If this method is called for a content control that is not of type repeating section item, the call fails with: "This property can only be used with repeating section item content controls."

Table 5 lists the most important members of the RepeatingSectionItem object.

Table 5. RepeatingSectionItem object members

MemberDescription
Range as Range
Returns the range of the specified repeating section item, excluding the start and end tags.
Delete
Deletes the specified repeating section item.
InsertItemAfter as RepeatingSectionItem
Adds a repeating section item after the specified item and returns the new item.
InsertItemBefore as RepeatingSectionItem
Adds a repeating section item before the specified item and returns the new item.

Table 6 lists the most important members of the RepeatingSectionItemColl object.

Table 6. RepeatingSectionItemColl object members

MemberDescription
Item as RepeatingSectionItem
Returns an individual repeating section item.

Table 7 shows the new member of the WdContentControlType enumeration for repeating section content controls.

Table 7. WdContentControlType enumeration addition

ConstantDescription
wdContentControlRepeatingSection
Represents a content control that contains a single item in a repeating section.

Code sample

The following code sample shows how to use repeating section content controls programmatically.

Sub testRepeatingSectionControl() Dim objRange As Range Dim objTable As Table Dim objCustomPart As CustomXMLPart Dim objCC As ContentControl Dim objCustomNode As CustomXMLNode Set objCustomPart = ActiveDocument.CustomXMLParts.Add objCustomPart.LoadXML ("<books>" & _ "<book><title>Everyday Italian</title>" & _ "<author>Giada De Laurentiis</author></book>" & _ "<book><title>Harry Potter</title>" & _ "<author>J K. Rowling</author></book>" & _ "<book><title>Learning XML</title>" & _ "<author>Erik T. Ray</author></book></books>") Set objRange = ActiveDocument.Paragraphs(1).Range Set objTable = ActiveDocument.Tables.Add(objRange, 2, 2) With objTable.Borders .InsideLineStyle = wdLineStyleSingle .OutsideLineStyle = wdLineStyleDouble End With Set objRange = objTable.Cell(1, 1).Range Set objCustomNode = objCustomPart.SelectSingleNode("/books[1]/book[1]/title[1]") Set objCC = ActiveDocument.ContentControls.Add(wdContentControlText, objRange) objCC.XMLMapping.SetMappingByNode objCustomNode Set objRange = objTable.Cell(1, 2).Range Set objCustomNode = objCustomPart.SelectSingleNode("/books[1]/book[1]/author[1]") Set objCC = ActiveDocument.ContentControls.Add(wdContentControlText, objRange) objCC.XMLMapping.SetMappingByNode objCustomNode Set objRange = objTable.Rows(1).Range Set objCC = ActiveDocument.ContentControls.Add(wdContentControlRepeatingSection, objRange) objCC.XMLMapping.SetMapping ("/books[1]/book")End Sub

Open XML File Format changes for repeating section content controls

The file format representation of a repeating section content control generally uses the same element names, values, and so on as the existing XML markup; however, the <sdt> element representing the outer repeating section container exists in the Word 2013 namespace, to ensure compatibility with earlier versions of Word.

The individual repeating items within the repeating section content control (that surround each individual item) are saved as rich text content controls using the existing WordprocessingML representation. Table 8 lists new elements in the WordprocessingML schema for repeating section content controls.

Table 8. New elements in the WordprocessingML schema for repeating section content controls

ElementDescription
<w15:repeatingSection>
Specifies a repeating section content control. This element is mutually exclusive with all other control types and has no child elements or attributes.
<w15:repeatingSectionItem>
Specifies a repeating section item content control. This element is mutually exclusive with all other control types, and has no child elements or attributes.
<w15:doNotAllowInsertDeleteSection>
Specifies that the user cannot add or delete sections by using the user interface in Word 2013.
<w15:sectionTitle>
Specifies the name of repeating section items (and is used in the context menu when the control is chosen).
Content controls in Word (2024)

FAQs

Where are content controls in Word? ›

View the Developer tab to add or change content controls

In the list of tabs under Customize the Ribbon, select the Developer box and then click OK. Do one of the following: To add a control, click in the document where you want to add it, and then click the control you want to add on the Design tab.

What is an example of a content control? ›

Examples of types of structured regions (or content controls) are combo boxes, pictures, text blocks, and calendars.

What is the difference between rich text and plain text content control? ›

A Plain Text content control will be inserted into the form... and does not allow users to format the data, whereas Rich Text allows users to format the text they've entered. can repeat this action by positioning the cursor and pressing .

How do I edit a content control list in Word? ›

To edit the Default text and color of Word Content Controls, go to the 'Developer' tab and click 'Design Mode. ' This will display the Content Controls with opening and closing brackets. Select the text between the brackets and replace it with desired default text. You can apply distinctive formatting as well.

How do I restrict editing in Word content control? ›

How to restrict editing in a Word document
  1. Open the document and click on the "Review" tab.
  2. Under "Protect," select "Editing restrictions" to open the editing permissions menu.
  3. To restrict editing for the entire document, select the check box next to the words "Allow only this type of editing in the document."
Feb 12, 2024

What is a plain text content control in Word? ›

Plain Text Content Control is limited to content that cannot contain any formatting. In other words: only plain text. However, you can change the formatting by making changes to the surrounding formatting.

How do I insert plain text content control in Word? ›

Insert a text control
  1. Click or tap where you want to insert the control.
  2. Select Developer > Rich Text Content Control or Plain Text Content Control .

Is Rich Text Format the same as word? ›

Rich Text Format (RTF) is a file Format that lets you exchange text files between different word processors in different operating systems (OSes). For example, you can create a file in Microsoft Word and then open it in another word processor, such as Apple Pages or Google Docs.

What are rich text controls? ›

The Rich Text control allows you to insert text and graphics on a view or form. It is an editable content control which converts the content to HTML.

What is an example of plain text? ›

Thus, representations such as SGML, RTF, HTML, XML, wiki markup, and TeX, as well as nearly all programming language source code files, are considered plain text.

How do I turn off enable content in Word? ›

Here's how:
  1. Open the document in Word, Excel or PowerPoint.
  2. Click on the 'File' tab in the top left corner of the window.
  3. Select 'Options' from the drop-down menu.
  4. Go to the 'Trust Center' tab.
  5. Find the 'Trust Center Settings' and click it.
  6. Choose 'Protected View' from the left-hand side.

How do I use drop-down list content control in Word? ›

Insert a combo box or a drop-down list
  1. Go to Developer > Combo Box Content Control or Drop-Down List Content Control .
  2. Select the content control, and then select Properties.
  3. To create a list of choices, select Add under Drop-Down List Properties.
  4. Type a choice in Display Name, such as Yes, No, or Maybe.

How do I insert a rich text content control in Word? ›

Under Insert controls, click Rich Text Box. In the Rich Text Box Binding dialog box, select the field in which you want to store rich text box data, and then click OK.

Top Articles
Latest Posts
Article information

Author: Manual Maggio

Last Updated:

Views: 6083

Rating: 4.9 / 5 (69 voted)

Reviews: 92% of readers found this page helpful

Author information

Name: Manual Maggio

Birthday: 1998-01-20

Address: 359 Kelvin Stream, Lake Eldonview, MT 33517-1242

Phone: +577037762465

Job: Product Hospitality Supervisor

Hobby: Gardening, Web surfing, Video gaming, Amateur radio, Flag Football, Reading, Table tennis

Introduction: My name is Manual Maggio, I am a thankful, tender, adventurous, delightful, fantastic, proud, graceful person who loves writing and wants to share my knowledge and understanding with you.