Back to Devexpress

PdfFormFieldFacade Class

officefileapi-devexpress-dot-pdf-b5710273.md

latest4.6 KB
Original Source

PdfFormFieldFacade Class

Base class for all form field facades.

Namespace : DevExpress.Pdf

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

NuGet Package : DevExpress.Pdf.Core

Declaration

csharp
public abstract class PdfFormFieldFacade :
    IEnumerable<PdfWidgetFacade>,
    IEnumerable
vb
Public MustInherit Class PdfFormFieldFacade
    Implements IEnumerable(Of PdfWidgetFacade),
               IEnumerable

The following members return PdfFormFieldFacade objects:

Remarks

Call the PdfAcroFormFacade.GetNames() method to get a list of form field names.

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

csharp
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);
    }
}
  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;
          }
      }
  }
vb
Using pdfDocumentProcessor As New PdfDocumentProcessor()
  pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf")

  Dim documentFacade As PdfDocumentFacade = pdfDocumentProcessor.DocumentFacade
  Dim acroForm As PdfAcroFormFacade = documentFacade.AcroForm

  'Change all form fields' color settings:
  Dim fields = acroForm.GetFields()
  For Each field As PdfFormFieldFacade In fields
    ChangeFormFieldColor(field)
  Next field
End Using
  private static void ChangeFormFieldColor(PdfFormFieldFacade field)
    For Each pdfWidget As PdfWidgetFacade 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 Then
        pdfWidget.BorderStyle = PdfBorderStyle.Underline
      End If
    Next pdfWidget

Implements

IEnumerable<PdfWidgetFacade>

IEnumerable

Inheritance

Show 11 items

Object PdfFormFieldFacade PdfFormFieldFacade<TWidget, TField>

PdfButtonFormFieldFacade

PdfCheckBoxFormFieldFacade

PdfChoiceFormFieldFacade<T>

PdfComboBoxFormFieldFacade

PdfListBoxFormFieldFacade

PdfTextFormFieldFacade

PdfRadioGroupFormFieldFacade

PdfSignatureFormFieldFacade

See Also

PdfFormFieldFacade Members

DevExpress.Pdf Namespace