GdPicture.NET.14
GdPicture14 Namespace / GdPicturePDF Class / GetFormFieldMultiSelect Method
A unique form field identifier specifying a required form field object. You can obtain this identifier using these methods: AddListFormField(Single,Single,Single,Single,String,String,Single,Byte,Byte,Byte,Boolean,Boolean), GetFormFieldId or GetFormFieldChildID.
Example





In This Topic
GetFormFieldMultiSelect Method (GdPicturePDF)
In This Topic
Returns, if the MultiSelect flag of a required form field, here a list box, is set. The list box 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.

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

Parameters

FieldId
A unique form field identifier specifying a required form field object. You can obtain this identifier using these methods: AddListFormField(Single,Single,Single,Single,String,String,Single,Byte,Byte,Byte,Boolean,Boolean), GetFormFieldId or GetFormFieldChildID.

Return Value

true if the MultiSelect flag of the specified choice form field is set, otherwise false. The GetStat method can be subsequently used to determine if this method has been successful.
Remarks
This method is only allowed for use with non-encrypted documents.

It is recommend to use the GetStat method to identify the specific reason for the method's failure, if any.

Just to remind you, that this method is only meaningful for list boxes, otherwise it will fail.

Example
How to determine those list boxes, which allow multiselection.
Dim caption As String = "Example: GetFormFieldMultiSelect"
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 sorted As String = "Sorted:" + vbCrLf, selected As String = "Multiselected:" + vbCrLf, title As String = ""
            Dim formID As Integer = 0
            Dim type As PdfFormFieldType = PdfFormFieldType.PdfFormFieldTypeUnknown
            Dim multi As Boolean = False, sort As Boolean = False
            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
                            title = gdpicturePDF.GetFormFieldTitle(formID)
                            If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
                                MessageBox.Show("The GetFormFieldTitle() method has failed with the status: " + gdpicturePDF.GetStat().ToString())
                                Exit For
                            End If
            
                            sort = gdpicturePDF.GetFormFieldItemSort(formID)
                            If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
                                MessageBox.Show("The GetFormFieldItemSort() method has failed with the status: " + gdpicturePDF.GetStat().ToString())
                                Exit For
                            End If
                            If sort Then sorted = sorted + title + "; "
            
                            multi = gdpicturePDF.GetFormFieldMultiSelect(formID)
                            If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
                                MessageBox.Show("The GetFormFieldMultiSelect() method has failed with the status: " + gdpicturePDF.GetStat().ToString())
                                Exit For
                            End If
                            If multi Then selected = selected + title + "; "
                        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
                Dim message As String = sorted + vbCrLf + selected
                MessageBox.Show(message, caption)
            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: GetFormFieldMultiSelect";
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
        {
            string sorted = "Sorted:\n", selected = "Multiselected:\n",  title = "";
            int formID = 0;
            PdfFormFieldType type = PdfFormFieldType.PdfFormFieldTypeUnknown;
            bool multi = false, sort = false;
            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)
                        {
                            title = gdpicturePDF.GetFormFieldTitle(formID);
                            if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
                            {
                                MessageBox.Show("The GetFormFieldTitle() method has failed with the status: " + gdpicturePDF.GetStat().ToString());
                                break;
                            }
                            sort = gdpicturePDF.GetFormFieldItemSort(formID);
                            if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
                            {
                                MessageBox.Show("The GetFormFieldItemSort() method has failed with the status: " + gdpicturePDF.GetStat().ToString());
                                break;
                            }
                            if (sort)
                                sorted = sorted + title + "; ";
            
                            multi = gdpicturePDF.GetFormFieldMultiSelect(formID);
                            if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
                            {
                                MessageBox.Show("The GetFormFieldMultiSelect() method has failed with the status: " + gdpicturePDF.GetStat().ToString());
                                break;
                            }
                            if (multi)
                                selected = selected + title + "; ";
                        }
                    }
                    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)
            {
                string message = sorted + "\n" + selected;
                MessageBox.Show(message, 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