2013-11-22 38 views
3

我想將SqlData導出爲pdf,爲此我試圖獲取數據列表以打印preview.I已遵循此示例。 http://www.aspdotnet-suresh.com/2011/04/how-to-export-gridview-data-to-pdf.html這裏的網格視圖數據顯示。但我已經做了一些修改,並試圖採取DataList.Now數據每一件事情都很好,我能夠打印預覽DataList.Only一個問題是存在的,我想限制數量數據顯示每頁..就像我只想限制10Row每pdf的單頁。任何人都有想法如何實現這樣的功能?將Datalist導出爲每頁受限行的PDF

總之我需要導出的PDF分頁功能,here是PDF我目前得到

對不起,如果我的問題太簡單了,但我對Asp.Net

感謝

新手
+0

如何確定要在頁面上顯示的記錄或數據,意味着如何設置每頁顯示的記錄數? –

+0

我在我的數據庫上有唯一的ID,基於那個唯一的ID我決定 – Aamirkhan

+0

親愛的,這將取決於你如何顯示數據..你可以請附上PDF數據,以便我可以更準確地回答它。 –

回答

1

在該鏈接上顯示的方法稍微簡單一些,但您可以修改該方法來解決您的問題。以下是一段代碼:

using System.Diagnostics; 
using System.IO; 
using iTextSharp.text; 
using iTextSharp.text.pdf; 

namespace RowsCountSample 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      using (var pdfDoc = new Document(PageSize.A4)) 
      { 
       var pdfWriter = PdfWriter.GetInstance(pdfDoc, new FileStream("Test.pdf", FileMode.Create)); 
       pdfDoc.Open(); 

       var table1 = new PdfPTable(3); 
       table1.HeaderRows = 2; 
       table1.FooterRows = 1; 

       //header row 
       var headerCell = new PdfPCell(new Phrase("header")); 
       headerCell.Colspan = 3; 
       headerCell.HorizontalAlignment = Element.ALIGN_CENTER; 
       table1.AddCell(headerCell); 

       //footer row 
       var footerCell = new PdfPCell(new Phrase("footer")); 
       footerCell.Colspan = 3; 
       footerCell.HorizontalAlignment = Element.ALIGN_CENTER; 
       table1.AddCell(footerCell); 

       //adding some rows 
       for (int i = 0; i < 70; i++) 
       { 
        //adds a new row 
        table1.AddCell(new Phrase("Cell[0], Row[" + i + "]")); 
        table1.AddCell(new Phrase("Cell[1], Row[" + i + "]")); 
        table1.AddCell(new Phrase("Cell[2], Row[" + i + "]")); 

        //sets the number of rows per page 
        if (i > 0 && table1.Rows.Count % 7 == 0) 
        { 
         pdfDoc.Add(table1); 
         table1.DeleteBodyRows(); 
         pdfDoc.NewPage(); 
        } 
       } 

       pdfDoc.Add(table1); 
      } 

      //open the final file with adobe reader for instance. 
      Process.Start("Test.pdf"); 
     } 
    } 
}