Как я могу отформатировать заголовки XRPivotGrid? - PullRequest
2 голосов
/ 28 июня 2011

Это вопрос DevExpress Reporting / XtraReports.Я использую DevExpress 2011 Vol 1 для Win Forms.

Я пытаюсь отформатировать 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;
}

Но этого недостаточно.Как видно из этого изображения, ячейки заголовка с фоновым цветом grey не достигаются (т. Е. Эти события не запускаются, когда они нарисованы для печати).

enter image description here

Кто-нибудь знает правильный способ сделать это?Я снова хочу избавиться от границ и изменить BackColor: s этих серых блоков.

Спасибо

1 Ответ

2 голосов
/ 27 июля 2011

Это ошибка, мы открыли для вас отчет об ошибке по адресу 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, вы получите гораздо более быстрый ответ.

Спасибо

- Вуди

...