首页 > 解决方案 > 使用itextsharp生成gridview pdf格式时如何设置备用行颜色?

问题描述

我已经在 pdf 表中添加了一些条件,但我想在最后一个条件中添加备用行颜色,而不仅仅是白色。您可以看到行颜色更改有四个条件,但我想将备用颜色放在最后一个条件中。

我的代码如下所示

   for (int i = 0; i < dataGridView1.Rows.Count; i++)
            {

            for (int k = 0; k < 2; k++)
            {
                if (dataGridView1[k, i].Value != null)
                {
                    DateTime dateTime = DateTime.UtcNow.Date;
                    var tomorrow = dateTime.AddDays(1);
                    var tom1 = dateTime.AddDays(2);
                    var tom2 = dateTime.AddDays(3);                      
                    string data = dataGridView1.Rows[i].Cells[6].Value.ToString();
                    string dateVal = Convert.ToDateTime(dataGridView1[k, i].Value).ToString("MM/dd/yyyy");                      
                    PdfPCell cellc = new PdfPCell(new Phrase(dateVal, fontTable));
                    if (dateVal == dateTime.ToString("MM/dd/yyyy") && data != "FIN - ENIG               ")
                    {                                                    
                         cellc.BackgroundColor = new iTextSharp.text.Color(0, 240, 240);
                        pdfTable.DefaultCell.BackgroundColor = BaseColor.LIGHT_GRAY;                       
                    }
                    else if (data != "FIN - ENIG               " && dateVal == tomorrow.ToString("MM/dd/yyyy"))
                    {
                        cellc.BackgroundColor = new iTextSharp.text.Color(0, 240, 240);
                        pdfTable.DefaultCell.BackgroundColor = BaseColor.LIGHT_GRAY;
                    }
                    else if (data != "FIN - ENIG               " && dateVal == tom1.ToString("MM/dd/yyyy"))
                    {
                        cellc.BackgroundColor = new iTextSharp.text.Color(0, 240, 240);
                        pdfTable.DefaultCell.BackgroundColor = BaseColor.LIGHT_GRAY;
                    }
                    else if (data != "FIN - ENIG               " && dateVal == tom2.ToString("MM/dd/yyyy"))
                    {
                        cellc.BackgroundColor = new iTextSharp.text.Color(0, 240, 240);
                        pdfTable.DefaultCell.BackgroundColor = BaseColor.LIGHT_GRAY;
                    }
                    else
                    {



                       // pdfTable.DefaultCell.BackgroundColor = BaseColor.WHITE;
                    }

                    pdfTable.AddCell(cellc);
                }

            }

标签: c#winformspdfitext

解决方案


推荐阅读