PAGINAS EM PRINTDOCUMENT

LEARDINI 19/11/2010 08:22:52
#357812
E aew Galera, bom dia.

Estou com um problema com o PRINTDOCUMENT, eu tenho uma rotina que preenche com os dados o PRINTDOCUMENT mas quando passa de 1 folha não consigo fazer ele add na página 2 e assim sucecivamente. Estou fazendo etiquetas preencho os dados de um DataGridView e está funucionando. O código que tenho pra add uma nova página é o seguinte:

  
If y = 1080 And i = 1080 Then
e.HasMorePages = True
y = 90
i = 90
End If


o data GridView é assim

  
[ô]PERCORRE O DATAGRID VIEW
For Each row As DataGridViewRow In Me.DataGridView1.Rows
If Not row.IsNewRow Then

If posicao = 0 Then
flag = (row.Cells(1).Value.ToString)
g.DrawString(flag, FONTE, Brushes.Black, 12, y)
y += 20

posicao = 1
ElseIf posicao = 1 Then
flag = (row.Cells(1).Value.ToString)
g.DrawString(flag, FONTE, Brushes.Black, 500, i)
i += 20
posicao = 0

End If


Não sei como ultilizar os dois códigos pra add uma nova página e escrever nela. O Layout da página que a rotina do DataGridView faz é assim:

***** *****
***** *****
***** *****
***** *****
***** *****
***** *****


Obrigado desde Já Pela Ajuda.
DANIELCPAETE 20/11/2010 18:35:38
#357905
Boa tarde amigo primeiramente gostaria de dizer que nao estou com o vb.net na frente portanto podem existir erros na sintaxe mas a idéia acho que consigo passar

Para fazer o que você quer o ideal é você saber quantas linhas cabem em cada pagina depois você vai precisar de uma variável private que ira guardar a ultima linha impressa.

Vamos a receita:

Calcule a quantidade de páginas nescessarias para sua impressão Até para enumerar as páginas posteriormente
Insira um contador na impressão e utilize o while para impressão
Sempre que chegar no limite de páginas você marca a ultima linha impressa e chama o comando HasMorePages = True lembrando que tem que iniciar desta linha no próximo ciclo de impressão

Abração e bom final de semana pra você
LEARDINI 22/11/2010 09:56:14
#357953
Então amigo.

como estou usando o DataGridView pra obter os dados, após adcionar uma nova página ele sai do Loop e começa de novo ficando assim no loop infinito.
ESLEYSANCHES 22/11/2010 10:02:03
#357954
Tenho um exemplo desse pronto porém o mesmo está em C#.
Segue ele em anexo


Espero que te ajude !!
Abraços
LEARDINI 07/12/2010 09:59:05
#358970
Poxa vlw ai.. mas não consegui, meu problema é que quando add uma nova página usando e.HasMorePages = True ele sai do loop do datagridview e começa de novo e fica como loop infinito..

Tópico encerrado , respostas não são mais permitidas