c# Desktop

c# Form Sayfasında Çoklu Sayfaların Baskı Ön İzlemesi ve Yazdırılması

Form sayfalarından 1 sayfa olduğu gibi birden fazla sayfayı da yazıcıdan çıktı alabilirsiniz. Hatta bu sayfaalrın baskı ön izlemesini yaparak kağıt çıktısının bir örneğini oluşturabilirsiniz.

Form sayfasına iki adet button ekleyelim. Ayrıca yazıcı işlemleri için birer adet PrintPreviewDialog, PrintDocument, PrintDialog ekleyelim.

        PaperSize paperSize = new PaperSize("papersize", 150, 500);
        int totalnumber = 0;
        int itemperpage = 0;

        private void button1_Click(object sender, EventArgs e)
        {
            itemperpage = totalnumber = 0;
            printPreviewDialog1.Document = printDocument1;

            ((ToolStripButton)((ToolStrip)printPreviewDialog1.Controls[1]).Items[0]).Enabled
            = false;

            printDocument1.DefaultPageSettings.PaperSize = paperSize;
            printPreviewDialog1.ShowDialog();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            itemperpage = totalnumber = 0;
            printDialog1.Document = printDocument1;
            printDocument1.DefaultPageSettings.PaperSize = paperSize;
            printDialog1.ShowDialog();
        }

        private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
        {
            float currentY = 10;
            e.Graphics.DrawString("Print in Multiple Pages", DefaultFont, Brushes.Black, 10, currentY);
            currentY += 15;

            while (totalnumber <= 50) 
            {
                e.Graphics.DrawString(totalnumber.ToString(), DefaultFont, Brushes.Black, 50, currentY);
                currentY += 20; 
                totalnumber += 1; 
                if (itemperpage < 20) 
                {
                    itemperpage += 1; 
                    e.HasMorePages = false; 
                }
                else 
                {
                    itemperpage = 0; 
                    e.HasMorePages = true; 
                    return;
                }
            }
        }

 


İlgili Makaleler
Veri Girişi Doğrulama (Input Validation)
Basit Veri Bağlama (Simple Data Binding)
TabControl Panelini Kullanarak Lokantalar İçin Müşteri Siparişi Alan c# Form Uygulaması
c# Programında Bigpara Sayfasından Borsa Verilerini Selenium Kütüphanesini Kullanarak Çekme
Kompleks Veri Bağlama (Complex Data Binding)
Veri Girişi Maskeleme (MaskedTextBox)
Yıkıcı Metotlar (Destructors)
Kaçan Buton Oyununu Yapan c# Uygulaması
Konsol Ekranında Kod Yazma ve Çalıştırma
2020 TYT Matematik Ortakatlı Kuralıyla İlgili Sorunun Çözümünü c# Diliyle Kodlama
Form Sınıfı
Form Sınıfına Ait Bazı Olayların ve Özelliklerin Kullanılmasına Ait Örnek Uygulama
Verilen İki Matrisi Çarpan Programı c# Dilinde Form Ortamında Yapınız
Rastgele Seçilen Bir Sayıyı Basamaklarına Ayıran, Basamak Değerini ve Sayı Değerini Bulan c# Console Uygulaması
c# Console Uygulamalarında Ping Nasıl Kullanılır, Ping Atma
GroupBox Paneliyle Gruplandırılan Bilgisayar Parçalarının Satışını Yapan c# Form Uygulaması
Metodu Sonlandırma
Kredi Kartı Taksitlendirme İşlemini Yapan c# Uygulaması
Sayısal Loto Çekilişini Yapan c# Uygulaması
Yapıcı Metotlar (Constructors)

Yorum Ekle
   
Kötü İyi