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





In This Topic
GetFormFieldItemSort Method (GdPicturePDF)
In This Topic
Returns, if the Sort flag of a required form field, hereabout a choice field, is set. The required form field 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 choice fields, so this method is explicitly applicable to combo box and list box form field objects.

If this flag is set, the field's items should be sorted alphabetically. Be aware that this flag is only bear in mind when creating or processing forms within applications, not by PDF viewer. Viewers should simply display the options in the order in which the corresponding items are added in the form field.

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

Parameters

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

Return Value

true if the Sort 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 choice form fields, that means for combo boxes or list boxes, otherwise it will fail.

Example
How to determine those choice form fields, which items are sorted internally.
Dim caption As String = "Example: GetFormFieldItemSort"
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 choice form fields:" + vbCrLf, title As String = ""
            Dim formID As Integer = 0
            Dim type As PdfFormFieldType = PdfFormFieldType.PdfFormFieldTypeUnknown
            Dim 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 + "; "
                        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 MessageBox.Show(sorted, caption)
        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: GetFormFieldItemSort";
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 choice form fields:\n", title = "";
            int formID = 0;
            PdfFormFieldType type = PdfFormFieldType.PdfFormFieldTypeUnknown;
            bool 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) ||
                            (type == PdfFormFieldType.PdfFormFieldTypeCombo))
                        {
                            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 + "; ";
                        }
                    }
                    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)
                MessageBox.Show(sorted, 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