2

这是一个 DevExpress 报告/XtraReports 问题。我正在为 Win Forms 使用 DevExpress 2011 Vol 1。

我正在尝试格式化 XRPivotGrid 以摆脱所有边框并更改单元格的背景颜色。

目前我正在处理控件的打印事件,如下所示:

private void xrPivotGrid1_PrintHeader(object sender, CustomExportHeaderEventArgs e)
{
    e.Appearance.BackColor = Color.LightBlue;
    e.Brick.Sides = BorderSide.None;
}

private void xrPivotGrid1_PrintFieldValue(object sender, CustomExportFieldValueEventArgs e)
{
    e.Appearance.BackColor = Color.ForestGreen;
    e.Brick.Sides = BorderSide.None;
}

private void xrPivotGrid1_PrintCell(object sender, CustomExportCellEventArgs e)
{
    e.Appearance.BackColor = Color.PaleVioletRed;
    e.Brick.Sides = BorderSide.None;
}

但这还不够。正如您从该图像中看到的那样,没有到达具有灰色背景颜色的标题单元格(即,这些事件在为打印而绘制时不会被触发)。

在此处输入图像描述

有人知道这样做的正确方法吗?我想再次摆脱边框并更改那些灰色块的 BackColor:s。

谢谢

4

1 回答 1

2

这是一个错误,我们在http://www.devexpress.com/Support/Center/p/B187407.aspx为您打开了一个错误报告,如果您跟踪此问题,您将在修复可用时收到通知。

现在,您可能需要考虑解决此问题:

e.Appearance.BackColor = Color.ForestGreen;
e.Brick.Sides = BorderSide.None;

if(e.Brick is PanelBrick) {
    PanelBrick brick = e.Brick as PanelBrick;
    if(brick.Bricks.Count > 0 && brick.Bricks[0] as IVisualBrick != null) {
        ((IVisualBrick)brick.Bricks[0]).Sides = BorderSide.None;
        ((IVisualBrick)brick.Bricks[0]).BackColor = Color.ForestGreen;
    }
}

将来,如果您向 DevExpress 支持中心提交此类问题,您将得到更快的响应。

谢谢,

——伍迪

于 2011-07-27T14:22:19.737 回答