Как экспортировать из DataTable в PDF в WPF - PullRequest
0 голосов
/ 18 января 2011

Я создаю приложение WPF, в котором мне нужно экспортировать данные из DataTable в файл PDF. Может ли кто-нибудь указать мне правильное направление?

Ответы [ 2 ]

2 голосов
/ 18 января 2011

Нет встроенного способа сделать это, вы можете попробовать iTextSharp , для этого посмотрите здесь

http://www.dotnetspider.com/resources/29759-Exporting-GridView-PDF.aspx

и здесь

http://csharpdotnetfreak.blogspot.com/2008/12/export-gridview-to-pdf-using-itextsharp.html

1 голос
/ 01 сентября 2016

Используя iTextSharp, вы можете сделать это.Пакет Nuget также доступен для ITextSharp.Вы можете скачать его с https://www.nuget.org/packages/iTextSharp. Пожалуйста, найдите код ниже,

public void ExportToPdf(DataTable dt)
{      
    Document document = new Document();
    PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("c://sample.pdf", FileMode.Create));
    document.Open();

    iTextSharp.text.Font font5 = iTextSharp.text.FontFactory.GetFont(FontFactory.HELVETICA, 5);

    PdfPTable table = new PdfPTable(dt.Columns.Count);
    PdfPRow row = null;
    float[] widths = new float[] { 4f, 4f, 4f, 4f };

    table.SetWidths(widths);

    table.WidthPercentage = 100;
    int iCol = 0;
    string colname = "";
    PdfPCell cell = new PdfPCell(new Phrase("Products"));

    cell.Colspan = dt.Columns.Count;

    foreach (DataColumn c in dt.Columns)
    {
        table.AddCell(new Phrase(c.ColumnName, font5));
    }

    foreach (DataRow r in dt.Rows)
    {
        if (dt.Rows.Count > 0)
        {
           table.AddCell(new Phrase(r[0].ToString(), font5));
           table.AddCell(new Phrase(r[1].ToString(), font5));
           table.AddCell(new Phrase(r[2].ToString(), font5));
           table.AddCell(new Phrase(r[3].ToString(), font5));
       }          
    }  
    document.Add(table);
    document.Close();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...