FormFieldStatusText Property |
Namespace: Aspose.Words.Fields
If the OwnStatus property is set to true, the StatusText property specifies the status bar text. If the OwnStatus property is set to false, the StatusText property specifies the name of an AutoText entry that contains status bar text for the form field.
Microsoft Word allows strings with at most 138 characters.
public void FormField() { Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Use a document builder to insert a combo box FormField comboBox = builder.InsertComboBox("MyComboBox", new[] { "One", "Two", "Three" }, 0); comboBox.CalculateOnExit = true; Assert.AreEqual(3, comboBox.DropDownItems.Count); Assert.AreEqual(0, comboBox.DropDownSelectedIndex); Assert.AreEqual(true, comboBox.Enabled); builder.Writeln(); // Use a document builder to insert a check box FormField checkBox = builder.InsertCheckBox("MyCheckBox", false, 50); checkBox.IsCheckBoxExactSize = true; checkBox.HelpText = "Right click to check this box"; checkBox.OwnHelp = true; checkBox.StatusText = "Checkbox status text"; checkBox.OwnStatus = true; Assert.AreEqual(50.0d, checkBox.CheckBoxSize); Assert.AreEqual(false, checkBox.Checked); Assert.AreEqual(false, checkBox.Default); builder.Writeln(); // Use a document builder to insert text input form field FormField textInput = builder.InsertTextInput("MyTextInput", TextFormFieldType.Regular, "", "Your text goes here", 50); Assert.AreEqual(3, doc.Range.Fields.Count); textInput.EntryMacro = "EntryMacro"; textInput.ExitMacro = "ExitMacro"; textInput.TextInputDefault = "Regular"; textInput.TextInputFormat = "FIRST CAPITAL"; textInput.SetTextInputValue("This value overrides the one we set during initialization"); Assert.AreEqual(TextFormFieldType.Regular, textInput.TextInputType); Assert.AreEqual(50, textInput.MaxLength); // Get the collection of form fields that has accumulated in our document FormFieldCollection formFields = doc.Range.FormFields; Assert.AreEqual(3, formFields.Count); // Iterate over the collection with an enumerator, accepting a visitor with each form field FormFieldVisitor formFieldVisitor = new FormFieldVisitor(); using (IEnumerator<FormField> fieldEnumerator = formFields.GetEnumerator()) { while (fieldEnumerator.MoveNext()) { fieldEnumerator.Current.Accept(formFieldVisitor); } } Console.WriteLine(formFieldVisitor.GetText()); doc.UpdateFields(); doc.Save(ArtifactsDir + "Field.FormField.docx"); } /// <summary> /// Visitor implementation that prints information about visited form fields. /// </summary> public class FormFieldVisitor : DocumentVisitor { public FormFieldVisitor() { mBuilder = new StringBuilder(); } /// <summary> /// Called when a FormField node is encountered in the document. /// </summary> public override VisitorAction VisitFormField(FormField formField) { AppendLine(formField.Type + ": \"" + formField.Name + "\""); AppendLine("\tStatus: " + (formField.Enabled ? "Enabled" : "Disabled")); AppendLine("\tHelp Text: " + formField.HelpText); AppendLine("\tEntry macro name: " + formField.EntryMacro); AppendLine("\tExit macro name: " + formField.ExitMacro); switch (formField.Type) { case FieldType.FieldFormDropDown: AppendLine("\tDrop down items count: " + formField.DropDownItems.Count + ", default selected item index: " + formField.DropDownSelectedIndex); AppendLine("\tDrop down items: " + string.Join(", ", formField.DropDownItems.ToArray())); break; case FieldType.FieldFormCheckBox: AppendLine("\tCheckbox size: " + formField.CheckBoxSize); AppendLine("\t" + "Checkbox is currently: " + (formField.Checked ? "checked, " : "unchecked, ") + "by default: " + (formField.Default ? "checked" : "unchecked")); break; case FieldType.FieldFormTextInput: AppendLine("\tInput format: " + formField.TextInputFormat); AppendLine("\tCurrent contents: " + formField.Result); break; } // Let the visitor continue visiting other nodes. return VisitorAction.Continue; } /// <summary> /// Adds newline char-terminated text to the current output. /// </summary> private void AppendLine(string text) { mBuilder.Append(text + '\n'); } /// <summary> /// Gets the plain text of the document that was accumulated by the visitor. /// </summary> public string GetText() { return mBuilder.ToString(); } private readonly StringBuilder mBuilder; }