2013-11-22 4 views
3

Я пытаюсь экспортировать SqlData в pdf, потому что я пытаюсь получить список данных для печати предварительного просмотра. Я следовал этому примеру. http://www.aspdotnet-suresh.com/2011/04/how-to-export-gridview-data-to-pdf.html Здесь отображаются данные сетки. Но я сделал некоторые изменения и попытался взять данные в DataList. Теперь все прекрасно работает, я могу сделать предварительный просмотр данных DataList. Только одна проблема заключается в том, что я хочу ограничить число отображение данных на страницу..Как я просто хочу ограничить 10Row на одну страницу pdf. У кого-нибудь есть идея, как добиться такой функциональности?Экспорт Datalist в PDF с ограниченными строками на страницу

Короче мне нужна функциональность разрыва страницы на экспортируемые PDF, here является PDF я получаю в настоящее время

Извините за, если мой вопрос слишком прост, но я новичок на Asp.Net

Благодарности

+0

как вы определяете записи или данные для показа на странице, чтобы сказать, как вы будете устанавливать количество записей для отображения на странице? –

+0

У меня есть уникальный идентификатор на моем db, на основе этого уникального идентификатора, который я определяю. – 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"); 
     } 
    } 
} 
Смежные вопросы