首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >iTextSharp PdfPtable空出来

iTextSharp PdfPtable空出来
EN

Stack Overflow用户
提问于 2014-11-05 16:03:07
回答 1查看 501关注 0票数 0

我一整天都在为这个绞尽脑汁。

这是代码:

代码语言:javascript
运行
复制
    private void addFinalCheckdata()
    {
        PdfPTable table = new PdfPTable(10);
        float[] widths = new float[] { 60f, 60f, 60f, 60f, 60f, 60f, 60f, 60f, 260f, 60f };
        table.TotalWidth = 800f;
        table.SetWidths(widths);
        table.LockedWidth = true;
        table.HorizontalAlignment = 0;

        // Add Answers 
        //string value = _LGSRobj.finalCheck.SatisfactoryVisualInspection;
        PdfPCell cell = new PdfPCell(new Phrase("z", _fntNormal7));
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.EmergencyControl;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.EarthBondingSatisfactory;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.NumberofAppliancesTested;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.serviceTimerSet;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.StartPressure;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.FinishPressure;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.Pass;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.InstallationCaped;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        table.AddCell(cell);

        _document.Add(table);
    }

我已经注释掉了实际值,并替换了"z“,以消除输入数据错误的可能性。pdf上的其他表格都很好。只是这个不见了。

我看不出密码有什么问题。可能是iTextSharp或VS中的一个bug。有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-05 16:15:26

当我复制/粘贴您的代码,并在注释中添加单元格号时,我得到以下内容:

代码语言:javascript
运行
复制
    private void addFinalCheckdata()
    {
        PdfPTable table = new PdfPTable(10);
        float[] widths = new float[] { 60f, 60f, 60f, 60f, 60f, 60f, 60f, 60f, 260f, 60f };
        table.TotalWidth = 800f;
        table.SetWidths(widths);
        table.LockedWidth = true;
        table.HorizontalAlignment = 0;

        // Add Answers 
        //string value = _LGSRobj.finalCheck.SatisfactoryVisualInspection;
        PdfPCell cell = new PdfPCell(new Phrase("z", _fntNormal7));
        // 1
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.EmergencyControl;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        // 2
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.EarthBondingSatisfactory;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        // 3
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.NumberofAppliancesTested;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        // 4
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.serviceTimerSet;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        // 5
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.StartPressure;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        // 6
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.FinishPressure;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        // 7
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.Pass;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        // 8
        table.AddCell(cell);

        //value = _LGSRobj.finalCheck.InstallationCaped;
        cell = new PdfPCell(new Phrase("z", _fntNormal7));
        // 9
        table.AddCell(cell);

        _document.Add(table);
    }

您正在创建一个包含10列的表:

代码语言:javascript
运行
复制
PdfPTable table = new PdfPTable(10);

然而,你只添加了9个细胞。因此,表不完整。如文档所示,不完整的行永远不会显示。

要么将该表更改为一个包含9列的表,要么添加一个额外的单元格(如果您‘想自己添加它的话,有一种方法可以自动完成此操作)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26761638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档