Skip to main content
All docs
V23.2

PdfAcroFormFacade.GetFields() Method

Gets all AcroForm fields’ properties.

Namespace: DevExpress.Pdf

Assembly: DevExpress.Pdf.v23.2.Core.dll

NuGet Package: DevExpress.Pdf.Core

Declaration

public IEnumerable<PdfFormFieldFacade> GetFields()

Returns

Type Description
IEnumerable<PdfFormFieldFacade>

A list of objects that contain form field properties.

Remarks

Use the PdfAcroFormFacade.GetFormField() method to obtain a specific form field’s properties. If you know the form field type, use one of the PdfAcroFormFacade methods (GetButtonFormField(), GetCheckBoxFormField(), GetComboBoxFormField() and so on) to obtain its parameters. Utilize the PdfAcroFormFacade.GetNames() method to get a list of form field names.

The GetFields method returns a list of PdfFormFieldFacade objects. Each object contains form field and widget (appearance) properties without access to the form field’s inner structure. Use the PdfFormFieldFacade.Widgets property to get the form fields widgets’ settings.

The code sample below retrieves all fields and changes their appearance:

using (PdfDocumentProcessor pdfDocumentProcessor = new PdfDocumentProcessor())
{
    pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf");

    PdfDocumentFacade documentFacade = pdfDocumentProcessor.DocumentFacade;
    PdfAcroFormFacade acroForm = documentFacade.AcroForm;

    //Change all form fields' color settings:
    var fields = acroForm.GetFields();
    foreach (PdfFormFieldFacade field in fields)
    {
        ChangeFormFieldColor(field);
    }
    pdfDocumentProcessor.SaveDocument("FormDemo_new.pdf");
}

  private static void ChangeFormFieldColor(PdfFormFieldFacade field)
  {
      foreach (PdfWidgetFacade pdfWidget in field)
      {
          //Change color and border settings
          //for all form fields:
          pdfWidget.BorderWidth = 1;
          pdfWidget.BackgroundColor = new PdfRGBColor(0.81, 0.81, 0.81);
          pdfWidget.BorderColor = new PdfRGBColor(0.47, 0.44, 0.67);
          pdfWidget.FontColor = new PdfRGBColor(0.34, 0.25, 0.36);

          //Change border style for text form fields:
          if (field.Type == PdfFormFieldType.Text)
          {
              pdfWidget.BorderStyle = PdfBorderStyle.Underline;
          }
      }
  }
See Also