Form |
The FormFieldData type exposes the following members.
Name | Description | |
---|---|---|
CalculateOnExit | Gets or sets a value indicating whether the content of all fields within the document shall be recalculated from their field codes when the content of the parent form field is modified. | |
Enabled | Gets or sets a value indicating whether the parent form field shall behave as though it is enabled or disabled when it is displayed in the document. Default value is . | |
EntryMacro | Gets or sets the subroutine in a scripting language which should be executed when the value of the parent form field is entered. | |
ExitMacro | Gets or sets the subroutine in a scripting language which should be executed when the value of the parent form field is exited. | |
Field | Gets the parent form field. | |
HelpText | Gets or sets the optional help text which shall be associated with the parent form field. | |
IsHelpTextAutoEntry | Gets or sets a value indicating whether HelpText should be interpreted as the name of a glossary document entry whose contents contain the help text. | |
IsStatusTextAutoEntry | Gets or sets a value indicating whether StatusText should be interpreted as the name of a glossary document entry whose contents contain the status text. | |
Name | Gets or sets the name of the form field. | |
StatusText | Gets or sets the optional status text which shall be associated with the parent form field. | |
Value | Gets the value of this form field explicitly set by the user or , if value was not explicitly set. Type of the value depends on form field type as explained in remarks. | |
ValueOrDefault | Gets the value of this form field explicitly set by the user or default value, if value was not explicitly set. Type of the value depends on form field type as explained in remarks. |
Name | Description | |
---|---|---|
Reset | Resets the Value of this form field instance. | |
ToString |
Returns a String that represents this
FormFieldData instance.
(Overrides ObjectToString) |
See Developer Guide: Generate document (PDF) with forms and fields
using System; using System.Globalization; using System.Text; using SautinSoft.Document; using SautinSoft.Document.MailMerging; using SautinSoft.Document.Tables; class Sample { static void Main(string[] args) { // Get your free 30-day key here: // https://sautinsoft.com/start-for-free/ FormsAndFields(); } /// <summary> /// Generate document (PDF) with forms and fields. /// </summary> /// <remarks> /// Details: https://www.sautinsoft.com/products/document/help/net/developer-guide/forms-and-fields.php /// </remarks> public static void FormsAndFields() { DocumentCore dc = new DocumentCore(); string placeHolder = new string('\x2002', 50); // Create form fields. Field fFullName = new Field(dc, FieldType.FormText, null, placeHolder); fFullName.FormData.Name = "FullName"; fFullName.FormData.Enabled = true; Field fBirthData = new Field(dc, FieldType.FormText, null, placeHolder); fBirthData.FormData.Name = "BirthDate"; Field fGender = new Field(dc, FieldType.FormDropDown); fGender.FormData.Name = "Gender"; Field fMarried = new Field(dc, FieldType.FormCheckBox); fMarried.FormData.Name = "Married"; fMarried.FormData.Enabled = true; Field fPhone = new Field(dc, FieldType.FormText, null, placeHolder); fPhone.FormData.Name = "Phone"; dc.Sections.Add(new Section(dc, new Paragraph(dc, new Run(dc, "Full name: "), fFullName), new Paragraph(dc, new Run(dc, "Birth date: "), fBirthData), new Paragraph(dc, new Run(dc, "Gender: "), fGender), new Paragraph(dc, new Run(dc, "Married: "), fMarried), new Paragraph(dc, new Run(dc, "Phone: "), fPhone))); // Customize form fields. var formFieldsData = dc.Content.FormFieldsData; var fullNameFieldData = (FormTextData)formFieldsData["FullName"]; fullNameFieldData.MaximumLength = 50; fullNameFieldData.StatusText = fullNameFieldData.HelpText = "Enter your name and surname (trimmed to 50 characters)."; fullNameFieldData.Field.ResultInlines.Content.Replace("Mister Bean"); var birthdateFieldData = (FormTextData)formFieldsData["BirthDate"]; birthdateFieldData.TextType = FormTextType.Date; birthdateFieldData.DefaultValue = "1990-01-01"; birthdateFieldData.ValueFormat = "yyyy-MM-dd"; birthdateFieldData.StatusText = birthdateFieldData.HelpText = "Enter your date of birth."; birthdateFieldData.Field.ResultInlines.Content.Replace("1990-01-01"); var genderFieldData = (FormDropDownData)formFieldsData["Gender"]; genderFieldData.Items.Add("Select sex"); genderFieldData.Items.Add("Male"); genderFieldData.Items.Add("Female"); genderFieldData.Items.Add("I don't know"); genderFieldData.StatusText = genderFieldData.HelpText = "Select your gender."; genderFieldData.SelectedItemIndex = 0; var marriedFieldData = (FormCheckBoxData)formFieldsData["Married"]; marriedFieldData.StatusText = marriedFieldData.HelpText = "Mark as checked if you are married."; marriedFieldData.DefaultValue = true; marriedFieldData.Value = true; var salaryFieldData = (FormTextData)formFieldsData["Phone"]; salaryFieldData.TextType = FormTextType.Number; salaryFieldData.DefaultValue = "555 13-12"; salaryFieldData.ValueFormat = "(###) ###-####"; salaryFieldData.StatusText = salaryFieldData.HelpText = "Enter your phone number."; salaryFieldData.Field.ResultInlines.Content.Replace("+1 (800) 111 2233"); dc.Save(@"fields-template.pdf", new PdfSaveOptions() {PreserveFormFields=true }); // Open the result for demonstration purposes. System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(@"fields-template.pdf") { UseShellExecute = true }); } }
Option Infer On Imports System Imports System.Globalization Imports System.Text Imports SautinSoft.Document Imports SautinSoft.Document.MailMerging Imports SautinSoft.Document.Tables Module Sample Sub Main() FormsAndFields() End Sub ''' Get your free 30-day key here: ''' https://sautinsoft.com/start-for-free/ ''' <summary> ''' Generate document (PDF) with forms and fields. ''' </summary> ''' <remarks> ''' Details: https://www.sautinsoft.com/products/document/help/net/developer-guide/forms-and-fields.php ''' </remarks> Sub FormsAndFields() Dim dc As New DocumentCore() Dim placeHolder As New String(ChrW(&H2002), 50) ' Create form fields. Dim fFullName As New Field(dc, FieldType.FormText, Nothing, placeHolder) fFullName.FormData.Name = "FullName" fFullName.FormData.Enabled = True Dim fBirthData As New Field(dc, FieldType.FormText, Nothing, placeHolder) fBirthData.FormData.Name = "BirthDate" Dim fGender As New Field(dc, FieldType.FormDropDown) fGender.FormData.Name = "Gender" Dim fMarried As New Field(dc, FieldType.FormCheckBox) fMarried.FormData.Name = "Married" fMarried.FormData.Enabled = True Dim fPhone As New Field(dc, FieldType.FormText, Nothing, placeHolder) fPhone.FormData.Name = "Phone" dc.Sections.Add(New Section(dc, New Paragraph(dc, New Run(dc, "Full name: "), fFullName), New Paragraph(dc, New Run(dc, "Birth date: "), fBirthData), New Paragraph(dc, New Run(dc, "Gender: "), fGender), New Paragraph(dc, New Run(dc, "Married: "), fMarried), New Paragraph(dc, New Run(dc, "Phone: "), fPhone))) ' Customize form fields. Dim formFieldsData = dc.Content.FormFieldsData Dim fullNameFieldData = CType(formFieldsData("FullName"), FormTextData) fullNameFieldData.MaximumLength = 50 fullNameFieldData.HelpText = "Enter your name and surname (trimmed to 50 characters)." fullNameFieldData.StatusText = fullNameFieldData.HelpText fullNameFieldData.Field.ResultInlines.Content.Replace("Mister Bean") Dim birthdateFieldData = CType(formFieldsData("BirthDate"), FormTextData) birthdateFieldData.TextType = FormTextType.Date birthdateFieldData.DefaultValue = "1990-01-01" birthdateFieldData.ValueFormat = "yyyy-MM-dd" birthdateFieldData.HelpText = "Enter your date of birth." birthdateFieldData.StatusText = birthdateFieldData.HelpText birthdateFieldData.Field.ResultInlines.Content.Replace("1990-01-01") Dim genderFieldData = CType(formFieldsData("Gender"), FormDropDownData) genderFieldData.Items.Add("Select sex") genderFieldData.Items.Add("Male") genderFieldData.Items.Add("Female") genderFieldData.Items.Add("I don't know") genderFieldData.HelpText = "Select your gender." genderFieldData.StatusText = genderFieldData.HelpText genderFieldData.SelectedItemIndex = 0 Dim marriedFieldData = CType(formFieldsData("Married"), FormCheckBoxData) marriedFieldData.HelpText = "Mark as checked if you are married." marriedFieldData.StatusText = marriedFieldData.HelpText marriedFieldData.DefaultValue = True marriedFieldData.Value = True Dim salaryFieldData = CType(formFieldsData("Phone"), FormTextData) salaryFieldData.TextType = FormTextType.Number salaryFieldData.DefaultValue = "555 13-12" salaryFieldData.ValueFormat = "(###) ###-####" salaryFieldData.HelpText = "Enter your phone number." salaryFieldData.StatusText = salaryFieldData.HelpText salaryFieldData.Field.ResultInlines.Content.Replace("+1 (800) 111 2233") dc.Save("fields-template.pdf", New PdfSaveOptions() With {.PreserveFormFields = True}) ' Open the result for demonstration purposes. System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo("fields-template.pdf") With {.UseShellExecute = True}) End Sub End Module