Desenvolvedor e Analista de Sistemas | IFPA

sábado, 16 de agosto de 2014

Tutorial C# - Imprimir Conteúdo da DataGridView

com 0 Comentário
Este tutorial vem da necessidade que eu tive em imprimir o conteúdo de uma DataGridView num programa que desenvolvi. Após muitas horas, alguns dias, muitos exemplos (que não funcionaram e muito complicados), encontrei uma solução que funciona muito bem, pelo menos resolveu o meu “problema”. Como penso que devemos partilhar conhecimentos, decidi elaborar este tutorial.



Objectivo: Apresentar dados numa DataGridView obtidos através de dados gravados numa base de dados.
1º – Crie um novo projecto
csharp001
2º – Adicione um botão (botão imprimir) e uma dataGridView
csharp002
Nota: é necessário indicar que vai usar uma base de dados OleDb (Access), para isso tem de adicionar o seguinte código que está em destaque.
csharp003
3º – No Form Load vamos introduzir o código que irá trazer a informação dos dados na base de dados.
csharp004
Podem verificar que foi introduzido o “try” e “catch”.
Para quem não está familiarizado com este código, uma pequena explicação que posso dar é que serve para verificar se existe algum erro na ligação (try), e se encontrar, mostra esse erro numa MessageBox (catch).
Nesta altura já podem verificar que ao iniciar o programa, já aparecem dados na DataGridView.
csharp005
4º – No botão imprimir irá introduzir o seguinte código
csharp010
Como podem verificar, existe uma parte do código sublinhada, essa parte refere-se a uma classe que vamos criar mais à frente. Certamente este código seria somente introduzido quando essa mesma classe estivesse criada, mas assim evitamos andar a “saltar” de form para form.
5º – Agora vamos criar um novo Form que será das “opções de impressão”.
csharp006
Este novo Form vai permitir que possamos escolher quais os campos que queremos imprimir, como também escrever qual o título da impressão.
É necessário inserir os seguintes Items:
- 2 Botões
- 1 CheckedListBox
- 1 TextBox
csharp007
6º – Os botões “OK” e “Cancel” servem exclusivamente para abrir “caixas de diálogo”
csharp008
O restante código da form “printOptions” é o seguinte:
csharp009
7º – Agora vamos criar uma nova classe e atribuir o nome printDGV.
csharp011
csharp012
Como o código da classe é extenso, colocarei o mesmo aqui, e os comentários estão no próprio código.
csharp013
csharp014
csharp015
csharp016

csharp017
csharp018
csharp019
csharp020
csharp021
Como devem reparar o código é bastante extenso, por isso disponibilizo-o para download, e assim não têm de escrever estas linhas todas de código.
Agora que o código está todo escrito. Vamos experimentar o programa.
Ao iniciar a “Form” irão aparecer os dados que estão na base de dados.
csharp022
Ao clicar no botão imprimir irá abrir o Form das opções de impressão.
csharp023
Neste “Form” pode seleccionar as colunas da tabela da base de dados que quer imprimir, e escrever o título para imprimir.
Ao clicar em “OK” poderá visualizar o “print preview” .
csharp024
E aqui está, acabou de imprimir o conteúdo da base de dados que pretende. Claro que poderá efectuar inúmeras alterações ao código e aos resultados que quer visualizar, mas isso já só depende de si.
O código da classe é extenso, mas se copiar a classe, o restante código é bastante simples.
Espero que tenham gostado…
Fonte: Afrasiab Cheraghi (code project)
Download: Código Imprimir DataGridView [62.72KB]

+1

0 comentários :

Postar um comentário

Total de visualizações