GdPicture.NET.14.API
GdPicture14 Namespace / GdPicturePDF Class / SetFormFieldMultiSelect Method
A unique form field identifier specifying a required form field object. You can obtain this identifier using these methods: GdPicturePDF.AddListFormField, GdPicturePDF.GetFormFieldId or GdPicturePDF.GetFormFieldChildID.
Set this parameter to true, if you want to enable the MultiSelect flag, otherwise set it to false to disable it.
Example





In This Topic
SetFormFieldMultiSelect Method (GdPicturePDF)
In This Topic
Sets the MultiSelect flag of a required form field, here a list box, that is specified by its unique form field's identifier and it is related to the currently loaded PDF document. As stated, this flag is only specific to list boxes, so this method is explicitly applicable to list box form field objects.

If this flag is set, more than one of the field's items may be selected simultaneously, if this flag is not set, no more than one item may be selected. If you set this flag to false when it has been previously set to true, the current selection is removed and the last item in the list box is selected by default.

Be aware that it is only allowed to set this flag if the CommitOnSelChange flag is not set for a list box, otherwise the method will fail.

Syntax
'Declaration
 
Public Function SetFormFieldMultiSelect( _
   ByVal FieldId As Integer, _
   ByVal MultiSelect As Boolean _
) As GdPictureStatus
public GdPictureStatus SetFormFieldMultiSelect( 
   int FieldId,
   bool MultiSelect
)
public function SetFormFieldMultiSelect( 
    FieldId: Integer;
    MultiSelect: Boolean
): GdPictureStatus; 
public function SetFormFieldMultiSelect( 
   FieldId : int,
   MultiSelect : boolean
) : GdPictureStatus;
public: GdPictureStatus SetFormFieldMultiSelect( 
   int FieldId,
   bool MultiSelect
) 
public:
GdPictureStatus SetFormFieldMultiSelect( 
   int FieldId,
   bool MultiSelect
) 

Parameters

FieldId
A unique form field identifier specifying a required form field object. You can obtain this identifier using these methods: GdPicturePDF.AddListFormField, GdPicturePDF.GetFormFieldId or GdPicturePDF.GetFormFieldChildID.
MultiSelect
Set this parameter to true, if you want to enable the MultiSelect flag, otherwise set it to false to disable it.

Return Value

A member of the GdPictureStatus enumeration. If the method has been successfully followed, then the return value is GdPictureStatus.OK.

We strongly recommend always checking this status first.

Remarks
This method is only allowed for use with non-encrypted documents.

Just to remind you, that this method is only meaningful for list boxes, otherwise it will fail. It is also not allowed to set this flag to true if the CommitOnSelChange flag is already defined for a required list box and vice versa.

Be aware that it is not possible to specify multiple items to be selected as the default value of a list box that supports multiple selections.
Example
How to set the MultiSelect flag for all list boxes in the current document.
Dim caption As String = "Example: SetFormFieldMultiSelect"
Dim save As Boolean = False
Dim gdpicturePDF As GdPicturePDF = New GdPicturePDF()
If gdpicturePDF.LoadFromFile("forms.pdf", False) = GdPictureStatus.OK Then
    Dim count As Integer = gdpicturePDF.GetFormFieldsCount()
    If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
        If count = 0 Then
            MessageBox.Show("This document includes no form fields.", caption)
        Else
            Dim formID As Integer = 0
            Dim type As PdfFormFieldType = PdfFormFieldType.PdfFormFieldTypeUnknown
            For i As Integer = 0 To count - 1
                formID = gdpicturePDF.GetFormFieldId(i)
                If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
                    type = gdpicturePDF.GetFormFieldType(formID)
                    If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
                        If type = PdfFormFieldType.PdfFormFieldTypeList Then
                            If (gdpicturePDF.SetFormFieldItemSort(formID, True) = GdPictureStatus.OK) AndAlso
                               (gdpicturePDF.SetFormFieldMultiSelect(formID, True) = GdPictureStatus.OK) Then
                                save = True
                            Else
                                MessageBox.Show("The SetFormFieldItemSort()/SetFormFieldMultiSelect() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
                                Exit For
                            End If
                        End If
                    Else
                        MessageBox.Show("The GetFormFieldType() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
                        Exit For
                    End If
                Else
                    MessageBox.Show("The GetFormFieldId() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
                    Exit For
                End If
            Next
            If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
                If save Then
                    If gdpicturePDF.SaveToFile("forms_updated.pdf") = GdPictureStatus.OK Then
                        MessageBox.Show("The example has been followed successfully and the file has been saved.", caption)
                    Else
                        MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + gdpicturePDF.GetStat().ToString(), caption)
                    End If
                Else
                    MessageBox.Show("This document includes no list boxes. The file has not been changed and has not been saved as well.", caption)
                End If
            End If
        End If
    Else
        MessageBox.Show("The GetFormFieldsCount() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
    End If
Else
    MessageBox.Show("The file can't be loaded. Status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: SetFormFieldMultiSelect";
bool save = false;
GdPicturePDF gdpicturePDF = new GdPicturePDF();
if (gdpicturePDF.LoadFromFile("forms.pdf", false) == GdPictureStatus.OK)
{
    int count = gdpicturePDF.GetFormFieldsCount();
    if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
    {
        if (count == 0)
            MessageBox.Show("This document includes no form fields.", caption);
        else
        {
            int formID = 0;
            PdfFormFieldType type = PdfFormFieldType.PdfFormFieldTypeUnknown;
            for (int i = 0; i < count; i++)
            {
                formID = gdpicturePDF.GetFormFieldId(i);
                if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
                {
                    type = gdpicturePDF.GetFormFieldType(formID);
                    if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
                    {
                        if (type == PdfFormFieldType.PdfFormFieldTypeList)
                        {
                            if ((gdpicturePDF.SetFormFieldItemSort(formID, true) == GdPictureStatus.OK) &&
                                (gdpicturePDF.SetFormFieldMultiSelect(formID, true) == GdPictureStatus.OK))
                            {
                                save = true;
                            }
                            else
                            {
                                MessageBox.Show("The SetFormFieldItemSort()/SetFormFieldMultiSelect() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
                                break;
                            }
                        }
                    }
                    else
                    {
                        MessageBox.Show("The GetFormFieldType() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
                        break;
                    }
                }
                else
                {
                    MessageBox.Show("The GetFormFieldId() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
                    break;
                }
            }
            if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
            {
                if (save)
                {
                    if (gdpicturePDF.SaveToFile("forms_updated.pdf") == GdPictureStatus.OK)
                        MessageBox.Show("The example has been followed successfully and the file has been saved.", caption);
                    else
                        MessageBox.Show("The example has been followed successfully, but the file can't be saved. Status: " + gdpicturePDF.GetStat().ToString(), caption);
                }
                else
                    MessageBox.Show("This document includes no list boxes. The file has not been changed and has not been saved as well.", caption);
            }
        }
    }
    else
        MessageBox.Show("The GetFormFieldsCount() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
}
else
    MessageBox.Show("The file can't be loaded. Status: " + gdpicturePDF.GetStat().ToString(), caption);
gdpicturePDF.Dispose();
See Also