[ ALGHEN @ 25.08.2006. 13:02 ] @
Kada "pustim" neki dokument na stampu, pojavljuje se onaj "Printing" prozor "Page 1 of document"...
Nije to nikakav problem kada treba da odstampam jednu ili mali broj strana, ali kada pustim na stampu odjednom 100-200 stranica (npr. nalozi za prenos ili opste uplatnice, pa mi treba gomila toga) ceo ekran "preplave" ovi glupi dialog prozori!

Ima li nacina da se to nekako izbegne, da ne otvara taj prozor pri stampi svakog novog dokumenta?



Code:

private void button_stampaj_Click(object sender, EventArgs e)
        {
            PrintDialog dlg = new PrintDialog();
            System.Drawing.Printing.PrintDocument doc = new System.Drawing.Printing.PrintDocument();
            dlg.Document = doc;
            if (dlg.ShowDialog() == DialogResult.OK)
            {
                doc.PrintPage += new System.Drawing.Printing.PrintPageEventHandler(this.printDocument1_PrintPage);
                for (int i = 0; i < neki_broj_uplatnica_koji_treba_da_stampam; i++)
                {                  
                    doc.DocumentName = "Clanarina";//Potpuo nebitno...
                    doc.Print();
                }
            }
        }
        private void printDocument1_PrintPage(object sender,
        System.Drawing.Printing.PrintPageEventArgs e)
        {
            //ovde je funkcija za stampu u Graphics-u...
        }
[ Boško @ 25.08.2006. 22:06 ] @
Ne znam da li ima načina da se taj dijalog ne prikazuje, ali ima načina da se prikaže samo jedan put.

Iz "button_stampaj_Click" izbaci for petlju, a "printDocument1_PrintPage" napravi ovako

Code:

private int TrenutnaStrana = 1;
private void printDocument1_PrintPage(object sender,
         System.Drawing.Printing.PrintPageEventArgs e)
        {
            if (TrenutnaStrana <= neki_broj_uplatnica_koji_treba_da_stampas)
            {
                //ovde odradi štampu...
                TrenutnaStrana +=1;
                e.HasMorePages = True;
            }
            else
            {
                e.HasMorePages = False;
            }
        }


[ DarkMan @ 26.08.2006. 19:23 ] @
Moze se resiti zamenom PrintController-a u PrintDocument-u.
Ja sam nesto pokusavao pa sam na kraju odustao.

Potrazi preko googla, postoje kao neka resenja ali mi se bas ne svidjaju.
[ ALGHEN @ 27.08.2006. 11:55 ] @
Citat:
Ne znam da li ima načina da se taj dijalog ne prikazuje, ali ima načina da se prikaže samo jedan put.

Iz "button_stampaj_Click" izbaci for petlju, a "printDocument1_PrintPage" napravi ovako...


@Bosko

Uspeo sam da napravim kao sto si rekao da se pojavljuje samo jedan prozor... Stavio sam for petlju u Document1_PrintPage() funkciju i sve radi kako treba. Jedan prozor je apsolutno podnosljiv! :)

Hvala, ne bih se sam setio da probam tako, sigurno!

Pozdrav!