更改表格样式文本OPENXML用于PowerPoint generatron(change tabl

2019-10-28 13:01发布

我使用OPENXML SDK这在PPT报告生成表有这样的代码。 这条线是表格样式的原因。

  tableStyleId.Text = "{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}";

风格是:

我需要改变的样式和颜色,但我无法找到任何东西。 请帮忙。

private D.Table GenerateTable(int projectID, string reportType)
    {
        // Declare and instantiate table  
        D.Table table = new D.Table();

        // Specify the required table properties for the table 
        D.TableProperties tableProperties = new D.TableProperties() { FirstRow = true, BandRow = false };
        D.TableStyleId tableStyleId = new D.TableStyleId();
        tableStyleId.Text = "{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}";

        tableProperties.Append(tableStyleId);
        D.TableGrid tableGrid1 = new D.TableGrid();
        System.Data.DataTable dtData = new System.Data.DataTable();
        if (reportType == "projcharter")
        {
            //tblXBenefit
            dtData = GetBenefit(projectID);

            // Declare and instantiate tablegrid and colums 
            //D.TableGrid tableGrid1 = new D.TableGrid();
            D.GridColumn gridColumn1 = new D.GridColumn() { Width = 1848000L };
            D.GridColumn gridColumn2 = new D.GridColumn() { Width = 648000L };
            D.GridColumn gridColumn3 = new D.GridColumn() { Width = 648000L };
            D.GridColumn gridColumn4 = new D.GridColumn() { Width = 648000L };

            tableGrid1.Append(gridColumn1);
            tableGrid1.Append(gridColumn2);
            tableGrid1.Append(gridColumn3);
            tableGrid1.Append(gridColumn4);
        }
        table.Append(tableProperties);
        table.Append(tableGrid1);

        // Instantiate the table header row 
        D.TableRow tableHRow = new D.TableRow() { Height = 0L };
        for (int column = 0; column < dtData.Columns.Count; column++)
        {
            tableHRow.Append(CreateTextCell(dtData.Columns[column].ToString()));
        }
        table.Append(tableHRow);

        // Instantiate the table data row 
        for (int row = 0; row < dtData.Rows.Count; row++)
        {
            // Instantiate the table row 
            D.TableRow tableRow = new D.TableRow() { Height = 0L };
            for (int column = 0; column < dtData.Columns.Count; column++)
            {
                tableRow.Append(CreateTextCell(dtData.Rows[row][column].ToString()));
            }
            table.Append(tableRow);
        }
        return table;
    }

链接前面的问题: 使用的OpenXML C#和ASP.net在PowerPoint中创建动态表

无法生成使用OPENXML在PPT报告第二表

如何忽略/解决“修复”从处理OpenXML与ASP.net生成简报报告消息

Answer 1:

解决它。 所以我所做的就是,我创建了一个新的PPT>插在它手工表与所需的设计,然后保存为XML的PPT(你会看到这个选项在另存为)。

打开tablestyleid该XML的搜索,并在代码中使用该值。



文章来源: change table style text in openxml for powerpoint generatron