Skip to main content
All docs
V24.2

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

PdfAcroFormFacade.GetFields() Method

Gets all AcroForm fields’ properties.

Namespace: DevExpress.Pdf

Assembly: DevExpress.Pdf.v24.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