Document.Controls Property

Gets the collection of managed controls that are contained on the document.

Namespace:  Microsoft.Office.Tools.Word
Assemblies:   Microsoft.Office.Tools.Word.v4.0.Utilities (in Microsoft.Office.Tools.Word.v4.0.Utilities.dll)
  Microsoft.Office.Tools.Word (in Microsoft.Office.Tools.Word.dll)

Syntax

'Declaration
ReadOnly Property Controls As ControlCollection
ControlCollection Controls { get; }

Property Value

Type: Microsoft.Office.Tools.Word.ControlCollection
A ControlCollection that contains all the managed controls on the document.

Remarks

A document in an Office solution can contain Windows Forms controls and host controls. For more information, see Controls on Office Documents.

To manage the controls on a document at run time, use the methods and properties of the ControlCollection object returned by the Controls property. For more information, see Adding Controls to Office Documents at Run Time.

Examples

The following code example adds text to the first paragraph and creates a Bookmark control that encompasses the paragraph. The code then shows a message box that displays the total number of controls on the document. This example is for an application-level add-in.

Private Sub DocumentControls()
    Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    vstoDoc.Paragraphs(1).Range.InsertParagraphAfter()
    vstoDoc.Paragraphs(1).Range.Text = "This is some sample text."
    vstoDoc.Controls.AddBookmark(vstoDoc.Paragraphs(1).Range, "Bookmark1")
    System.Windows.Forms.MessageBox.Show("Total number of controls: " & _
                                         vstoDoc.Controls.Count.ToString())
End Sub
private void DocumentControls()
{
    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    vstoDoc.Paragraphs[1].Range.InsertParagraphAfter();
    vstoDoc.Paragraphs[1].Range.Text = "This is some sample text.";
    vstoDoc.Controls.AddBookmark(vstoDoc.Paragraphs[1].Range, "Bookmark1");
    System.Windows.Forms.MessageBox.Show("Total number of controls: " +
        vstoDoc.Controls.Count.ToString());
}

.NET Framework Security

See Also

Reference

Document Interface

Microsoft.Office.Tools.Word Namespace

Other Resources

Controls on Office Documents

Adding Controls to Office Documents at Run Time