Pergunta

Preciso criar um aplicativo que aceite dados de entrada do usuário (como nome, endereço, quantidade etc.) e, em seguida, mescla-o com um modelo de documento pré-carregado (formulário de pedido) e, em seguida, imprime este documento mesclado. Posso usar o Windows Forms ou WPF para este projeto.

Alguma sugestão sobre a melhor forma de abordar isso? Tenho experiência no desenvolvimento do WinForms, mas não tenho idéia de como lidar com a fusão dos dados no documento para impressão.

Foi útil?

Solução

O WPF funciona muito bem para isso.

Você pode criar modelos de documentos a partir de elementos da interface do usuário WPF, como uma página ou um UserControl. Configure o modelo como você configuraria qualquer interface do usuário no designer VS. Determine em que forma seus dados serão armazenados (este será o seu DataContext) e vincule -se às suas propriedades públicas. Em seguida, você pode soltar seu modelo mesclado em uma página fixa e adicioná -lo a um documento XPS. Você pode imprimir isso com muita facilidade ou salvá -lo no disco.

Algoritmo simplificado:

  • Crie um formulário de entrada de dados.
  • Crie um tipo que mantenha dados do formulário (ligue para este tipo Foo)
  • Crie um modelo de página que se une contra Foo (quando uma instância do Foo é o DataContext)
  • Vincule o formulário a uma instância de foo
  • Peça ao usuário que preencha o formulário (e, portanto, a instância do foo)
  • Crie uma instância do seu modelo (assuma que é uma página)
  • Defina página.datacontext = fooInstance;
  • Adicione a página a uma página fixa e adicione -a a um documento fixo
  • Salve o documento fixo em um documento XPS
  • Salve o documento XPS ou envie -o para um printqueue

Estou fazendo algo semelhante a isso e funciona bem. Basta ir ao meu perfil e ler todas as minhas perguntas. Eles cobrem a maioria dos pedaços duros de todo o procedimento.

Outras dicas

Você precisa usar a fusão de correio. Uma mesclagem de correio é um método para obter dados de um banco de dados, planilha ou outra forma de dados estruturados e inseri -los em documentos como letras, etiquetas de envio e tags de nome. Começar de Este artigo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top