Подтвердить что ты не робот

Доступ к списку текстовых полей

У меня есть три поля подписи в моем PDF файле. Я принимаю значения из ComboBox в моих приложениях Windows Forms для этого.

ComboBox имеет:

  Signature 1
  Signature 2
  Signature 3

Для полей подписи у меня есть свойство:

 field.fullname;
 field.baseobject;

Что дает мне полное имя поля, например

 Signature 1
 ...

Я хочу сравнить эти два нажатия кнопки "Сохранить"; то есть, если выбрано поле подписи 1, данные должны быть добавлены только в поле подписи1 и т.д.

Как это сделать?

Я попытался использовать field.BasedataObject, и нашел следующее

<24 0 R> - 1st field
<26 0 R> - 2nd field
<1010 0 R> - 3rd field
4b9b3361

Ответ 1

Похоже, что простым решением было бы создать класс для Signature (используя ваши необходимые свойства), а затем создать массив подписей. Используйте этот массив Signatures, чтобы заполнить ваш combobox в первую очередь (поддерживая целостность вашей системы), затем используйте id из выбранного значения combobox для сравнения с индексом массива. Что-то вроде этого:

public class Signature{
    string property1;
    string property2;

    public Signature(string propertyVal1, string propertyVal2)
    {
        property1 = propertyVal1;
        property2 = propertyVal2;
    }

}

    Signature[] mySignatures = new Signature[3];

    public Form1()
    {
        InitializeComponent();
        mySignatures[0] = new Signature("hello", "world");
        mySignatures[1] = new Signature("hello", "world");
        mySignatures[2] = new Signature("hello", "world");
        for (int i = 0; i < mySignatures.Length; i++)
        {
            comboBox1.Items.Add(mySignatures[i]);
        }

    }

Ответ 2

Почему у вас нет структуры для Подписи?

struct Signature
{
Signature1,
Field1,
Field2
};

Затем вы можете сравнить эти структурные переменные.

Ответ 3

Вы можете создать класс с 3 свойствами следующим образом Подпись класса { строка Signature1, string fullname, объект baseobject } возможно, получили и установили слишком

это поможет вам объединить все значение и может также помочь в этом классе

Ответ 4

Очень сложно понять, что вы сделали и что хотите делать, но похоже, что вам просто нужно использовать SelectedValue из comboBox и сравнить/получить правильный объект с этим "id".

В вашем примере это выглядит как 24, 26 и 1010. Вывод, который вы получили там, вероятно, Object.ToString().

Не забывайте, что комбо имеет выбранное значение (вы должны сохранить ключ) и выделенный текст. Забудьте текст и перейдите к ключу использования. BasedataObject.Key

Ответ 5

Как вы относитесь к pdf? он сохраняется в вашей базе данных? или вы ссылаетесь на него извне?

если он сохранен в вашей базе данных, вы можете получить к нему доступ, используя двоичную сериализацию. если извне, у Adobe pro есть кнопка ссылки, которая соединяет файлы PDF с вашим веб-сервисом, используя URL (вам нужно сделать jscript pdf-кодирование в pdf)

Возможно, вы также захотите, чтобы приложение PDFOne легко обращалось к полям PDF.

Спасибо