'''' This code is part of Document Solutions for Word demos.'' Copyright (c) MESCIUS inc. All rights reserved.''ImportsSystem.DrawingImportsSystem.Collections.GenericImportsSystem.LinqImportsGrapeCity.Documents.Word PublicClassContentControlsHelpersFunctionCreateDocx() AsGcWordDocumentDim doc = NewGcWordDocument()Dim p = doc.Body.AddParagraph("Content Control Examples", doc.Styles(BuiltInStyleId.Heading1)) p = doc.Body.AddParagraph("Below are some examples of content controls. Open the document in MS Word to see the controls in action.", doc.Styles(BuiltInStyleId.Subtitle)) '''' ContentControlType.DropdownList:'' doc.Body.AddParagraph("ContentControlType.DropdownList", doc.Styles(BuiltInStyleId.Heading2)) doc.Body.AddParagraph("Select a fruit from the dropdown list control: ", doc.Styles(BuiltInStyleId.Subtitle)) Dim dropDownListCtrl = p.AddContentControl(ContentControlType.DropdownList, False) dropDownListCtrl.DropDownItems.Add(NewDropDownItem("apple", "Apples")) dropDownListCtrl.DropDownItems.Add(NewDropDownItem("orange", "Oranges")) dropDownListCtrl.DropDownItems.Add(NewDropDownItem("banana", "Bananas")) dropDownListCtrl.DropDownItems.Add(NewDropDownItem("pear", "Pears")) Dim dropDownPlaceholder = doc.GlossaryDocument.BuildingBlocks.Add("dropdownlist-placeholder", "General", type:=BuildingBlockType.ContentControlPlaceholder) Dim pp = dropDownPlaceholder.Body.AddParagraph("Click to pick") pp.GetRange().Runs.First.Style = p.ParentBody.Document.Styles(BuiltInStyleId.Strong) pp.GetRange().Runs.First.Font.Color.RGB = Color.DarkSeaGreen p.AddRun(" The green 'Click to pick' text on the left is a placeholder, replaced with the picked fruit when you've selected one.") dropDownListCtrl.Color.RGB = Color.OrangeRed dropDownListCtrl.Font.Color.RGB = Color.DarkOrange dropDownListCtrl.ShowingPlaceholderText = True dropDownListCtrl.PlaceholderText = dropDownPlaceholder '''' ContentControlType.Text'' doc.Body.AddParagraph("ContentControlType.Text", doc.Styles(BuiltInStyleId.Heading2)) doc.Body.AddParagraph("ContentControlType.Text allows entering a single run of text in the control. " &"All text in a Text control has the same formatting. In this case we use 'Block Text' paragraph style.", doc.Styles(BuiltInStyleId.Subtitle)) Dim textCtrl = doc.Body.AddContentControl(ContentControlType.Text, False) p = textCtrl.Content.AddParagraph("This is the default content of the only run in the only paragraph in a Text content control.", doc.Styles(BuiltInStyleId.BlockText)) Try textCtrl.Content.GetRange().Paragraphs.Add("Another paragraph (cannot be added).")Catch ex AsInvalidContentControlSingleChildException Console.WriteLine("Cannot have more than one paragraph to a Text content control.")EndTryTry p.GetRange().Runs.Add("Another run (cannot be added).")Catch ex AsInvalidContentControlSingleChildException Console.WriteLine("Cannot have more than one run to a Text content control.")EndTry '''' ContentControlType.RichText'' doc.Body.AddParagraph("ContentControlType.RichText", doc.Styles(BuiltInStyleId.Heading2)) doc.Body.AddParagraph("ContentControlType.RichText allows having multiple paragraphs, with multiple runs, " &"in a single RichText content control.", doc.Styles(BuiltInStyleId.Subtitle)) Dim richtext = doc.Body.AddContentControl(ContentControlType.RichText, False)Dim p1 = richtext.Content.AddParagraph("First paragraphs in the ") p1.AddRun("RichText ", doc.Styles(BuiltInStyleId.Strong)) p1.AddRun("content control.")Dim p2 = richtext.Content.AddParagraph("Second paragraphs in the ") p2.AddRun("RichText ", doc.Styles(BuiltInStyleId.Strong)) p2.AddRun("content control.") p2.Style = doc.Styles(BuiltInStyleId.IntenseQuote) '''' ContentControlType.BuildingBlockGallery'' doc.Body.AddParagraph("ContentControlType.BuildingBlockGallery", doc.Styles(BuiltInStyleId.Heading2)) doc.Body.AddParagraph("ContentControlType.BuildingBlockGallery allows selecting items from " &"building block galleries. Here we allow to select an equation from the built-in Word equations gallery.", doc.Styles(BuiltInStyleId.Subtitle)) Dim galleryControl = doc.Body.AddContentControl(ContentControlType.BuildingBlockGallery) galleryControl.BuildingBlockCategory = "Built-In" galleryControl.BuildingBlockGallery = "Equations" '''' ContentControlType.Group'' doc.Body.AddParagraph("ContentControlType.Group", doc.Styles(BuiltInStyleId.Heading2)) p = doc.Body.AddParagraph("ContentControlType.Group allows createing groups with modifiable " &"and constant (non-modifiable) content. Here we create a checkbox with a non-modifiable label on its right.", doc.Styles(BuiltInStyleId.Subtitle)) Dim groupControl = doc.Body.AddContentControl(ContentControlType.Group, False) p = groupControl.Content.AddParagraph()Dim checkBox = p.AddContentControl(ContentControlType.CheckBox, True) checkBox.Title = "Grouped checkbox" checkBox.Checked = True p.AddRun(" Text to the right of the checkbox") groupControl.Content.AddParagraph("Finally, we add a ContentControlType.Date control that shows the current date.") Dim dt = groupControl.Content.AddContentControl(ContentControlType.Date, False) dt.DateFormat = "u" dt.Date = Util.TimeNow() Return docEndFunctionEndClass