Как построить приложение для завершения формы/слияния документов с помощью Winforms или WPF?

StackOverflow https://stackoverflow.com/questions/2507102

Вопрос

Мне нужно создать приложение, которое принимает данные пользователя (например, имя, адрес, сумма и т. Д.), А затем объединяет его с предварительно загруженным шаблоном документа (форма заказа), а затем печатает этот объединенный документ. Я могу использовать Windows Forms или WPF для этого проекта.

Есть предложения о том, как лучше всего подходить? У меня есть опыт разработки Winforms, но я не имею никакого представления о том, как обрабатывать слияние данных с документом для печати.

Это было полезно?

Решение

WPF отлично работает для этого.

Вы можете создавать шаблоны документов из элементов UI WPF, таких как страница или UserControl. Установите шаблон, как будто вы настроили любой пользовательский интерфейс в дизайнере VS. Определите, в какой форме будут храниться ваши данные (это будет ваш DataContext), а затем свяжитесь с его публичными свойствами. Затем вы можете сбросить свой объединенный шаблон в фиксированную страницу и добавить его в документ XPS. Вы можете распечатать это очень легко или сохранить на диск.

Упрощенный алгоритм:

  • Создайте форму ввода данных.
  • Создайте тип, который будет хранить данные из формы (вызовите этот тип Foo)
  • Создайте шаблон страницы, который связывается с Foo (когда экземпляр Foo является данным DataContext)
  • Связывать форму с экземпляром Foo
  • Попросите пользователя заполнить форму (и, следовательно, экземпляр Foo)
  • Создайте экземпляр вашего шаблона (предположим, что это страница)
  • SET PAGE.Datacontext = FOONSTANCE;
  • Добавьте страницу на фиксированную страницу, затем добавьте ее в фиксированный документ
  • Сохранить FixedDocument в документ XPS
  • Сохраните документ XPS или отправьте его в PrintQueue

Я делаю что -то похожее на это, и это работает хорошо. Просто зайдите в мой профиль и прочитайте все мои вопросы. Они охватывают большинство твердых битов всей процедуры.

Другие советы

Вам нужно использовать Mail Merge. Слияние почты - это метод получения данных из базы данных, электронной таблицы или другой формы структурированных данных, а также вставки в такие документы, как письма, почтовые метки и теги имени. Начинать с эта статья.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top