【问题标题】:How to export DataGridView as PDF using iText7, (Note: Not Using iTextSharp) in C#?如何在 C# 中使用 iText7 将 DataGridView 导出为 PDF(注意:不使用 iTextSharp)?
【发布时间】:2020-05-25 13:17:36
【问题描述】:

我找到了很多关于如何使用 iText Sharp 将 DataGridView 和 DataTable 导出为 PDF 的示例,这是 iText7 的旧版本,但我想知道我们如何使用 iText7 来做到这一点,包括标题, 在此先感谢

【问题讨论】:

标签: .net pdf datagridview datatable itext7


【解决方案1】:

美好的一天, 你好 :), 您可以使用 for & foreach 并将数据从选定的 DGV 获取到表中...... 请看下面的代码:

        private Table PDFTableFromDGV(DataGridView dgv, float [] cloumnwidth)
    {
        // Getting Rows & Columns Counts
        int dgvrowcount = dgv.Rows.Count;
        int dgvcolumncount = dgv.Columns.Count;

        // Set The Table like new float [] {15f, 15f, 15f, 15f, 15f }
        Table table = new Table(cloumnwidth);
        table.SetWidth(iText.Layout.Properties.UnitValue.CreatePercentValue(100));

        // Print The DGV Header To Table Header
        for (int i = 0; i < dgvcolumncount; i++)
        {
            Cell headerCells = new Cell()
                          .SetBackgroundColor(iText.Kernel.Colors.ColorConstants.LIGHT_GRAY)
                          .SetTextAlignment(iText.Layout.Properties.TextAlignment.CENTER);
            //headerCells.SetNextRenderer(new RoundedCornersCellRenderer(headerCells));
            var gteCell = headerCells.Add(new Paragraph(dgv.Columns[i].HeaderText));
            table.AddHeaderCell(gteCell);
        }

        // Print The DGV Cells To Table Cells
        for (int i = 0; i < dgvrowcount; i++)
        {
            for (int c = 0; c < dgvcolumncount; c++)
            {
                Cell cells = new Cell()
                          .SetBackgroundColor(iText.Kernel.Colors.ColorConstants.WHITE)
                          .SetTextAlignment(iText.Layout.Properties.TextAlignment.CENTER);
                          
                var gteCell = cells.Add(new Paragraph(dgv.Rows[i].Cells[dgv.Columns[c].HeaderText].Value.ToString()));
                table.AddCell(gteCell);
            }
        }

        return table;
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-09
    • 2017-05-26
    • 2011-12-31
    • 1970-01-01
    相关资源
    最近更新 更多