merhaba arkadaşlar c# hazırladığım bir uygulamada listview deki listeyi çıktı almam gerekiyor düzenlemiş olduğum kod sorunsuz olarak çıktı veriyor fakat satır sayısı 1. sayfayı aştığında işler karışıyor alttaki kodlarda ne gibi bir düzenleme yaparsam bu sorunu çzebilirim. private void printDocument1_PrintPage { //Yazı fontumu ve çizgi çizmek için fırçamı ve kalem nesnemi oluşturdum Font myFont = new Font("Calibri", 28); SolidBrush sbrush = new SolidBrush ; Pen myPen = new Pen ; //Bu kısımda ürün listesi yazısını ve çizgileri yazdırıyorum e. Graphics. DrawLine(myPen, 120, 120, 750, 120); e. Graphics. DrawString("ÜRÜN LİSTESİ", myFont, sbrush, 320, 125); e. Graphics. DrawLine(myPen, 120, 180, 750, 180); //Bu kısımda üst bilgileri yazdırıyorum e. Graphics. DrawLine(myPen, 120, 200, 750, 200); myFont = new Font("Calibri", 12); e. Graphics. DrawString("Tarih", myFont, sbrush, 140, 205); e. Graphics. DrawString("Bayi/Firma", myFont, sbrush, 220, 205); e. Graphics. DrawString("Ürün", myFont, sbrush, 400, 205); e. Graphics. DrawString("Adet", myFont, sbrush, 520, 205); e. Graphics. DrawString("Takas", myFont, sbrush, 595, 205); e. Graphics. DrawString("Patlak", myFont, sbrush, 670, 205); e. Graphics. DrawLine(myPen, 120, 228, 750, 228); int y = 240; //Yazıyı Sola Daya StringFormat SolFormat = new StringFormat ; SolFormat. Alignment = StringAlignment. Near; //Yazıyı Ortaya StringFormat OrtaFormat = new StringFormat ; OrtaFormat. Alignment = StringAlignment. Center; //listview verilerini oku foreach //En alt toplam miktarları yaz e. Graphics. DrawLine(myPen, 120, y, 750, y); e. Graphics. DrawString(lbltAdet. Text, myFont, sbrush, 535, y + 10, OrtaFormat); e. Graphics. DrawString(lbltTakas. Text, myFont, sbrush, 615, y + 10, OrtaFormat); e. Graphics. DrawString(lbltPatlak. Text, myFont, sbrush, 700, y + 10, OrtaFormat); }

Graphicsle olacak ise benzemiyor bi report componenti kullansana Nush ile uslanmayanı etmeli tekdir, Tekdir ile uslanmayanın hakkı ktektir!

arkadaşlar yardımlarınız için teşekkürler problemimi bi şekilde çzdüm başkalarınada yardımı olur diye eklemek istedim. int i = 0; private void printDocument1_PrintPage { //Yazı fontumu ve çizgi çizmek için fırçamı ve kalem nesnemi oluşturdum Font Baslik = new Font("Arial", 12, FontStyle. Bold); Font AltBaslik = new Font("Arial", 12, FontStyle. Regular); SolidBrush sbrush = new SolidBrush ; Pen myPen = new Pen ; System. Drawing. Printing. PageSettings p = printDocument1. DefaultPageSettings; int x = 135, y = 135, say = lstArama. Items. Count; //Yazıyı Sola Daya StringFormat SolFormat = new StringFormat ; SolFormat. Alignment = StringAlignment. Near; //Yazıyı Ortaya StringFormat OrtaFormat = new StringFormat ; OrtaFormat. Alignment = StringAlignment. Center; //Bu kısımda üst bilgileri yazdırıyorum e. Graphics. DrawLine(myPen, p. Margins. Left, 120, p. PaperSize. Width - p. Margins. Right, 120); e. Graphics. DrawString("Tarih", Baslik, sbrush, 120, 125); e. Graphics. DrawString("Bayi/Firma", Baslik, sbrush, 205, 125); e. Graphics. DrawString("Ürün", Baslik, sbrush, 400, 125); e. Graphics. DrawString("Adet", Baslik, sbrush, 530, 125); e. Graphics. DrawString("Takas", Baslik, sbrush, 595, 125); e. Graphics. DrawString("Patlak", Baslik, sbrush, 670, 125); e. Graphics. DrawLine(myPen, p. Margins. Left, 148, p. PaperSize. Width - p. Margins. Right, 148); while { x += 25; //listview deki kayıtları aldk yazdık her seferinde y koordinatını arttırdık e. Graphics. DrawString(lstArama. Items . SubItems . Text, AltBaslik, sbrush, 100, x); e. Graphics. DrawString(lstArama. Items . SubItems . Text, AltBaslik, sbrush, 205, x); e. Graphics. DrawString(lstArama. Items . SubItems . Text, AltBaslik, sbrush, 370, x); e. Graphics. DrawString(lstArama. Items . SubItems . Text, AltBaslik, sbrush, 540, x); e. Graphics. DrawString(lstArama. Items . SubItems . Text, AltBaslik, sbrush, 615, x); e. Graphics. DrawString(lstArama. Items . SubItems . Text, AltBaslik, sbrush, 690, x); i++; //1 sayfayı geçiyorsa burası çalışacak if ((x + y + 20) > (p. PaperSize. Height + 60 - p. Margins. Bottom + 60)) } //liste tamamlanmışsa if }