Цвет фона свободного пространства C # ColumnHeader - PullRequest
0 голосов
/ 28 января 2010

Я пытаюсь нарисовать пользовательские заголовки ColumnHeaders в элементе управления FastObjectListView.

Пока код работает, но свободное пространство ColumnHeaders (поэтому часть, которая не содержит заголовков столбцов atm) по-прежнему рисует по умолчанию.

    private void olvMain_DrawColumnHeader(object sender, DrawListViewColumnHeaderEventArgs e)
    {
        e.Graphics.FillRectangle(Brushes.Black,
            e.Bounds.X, e.Bounds.Y,
            e.Bounds.Width, e.Bounds.Height);

        e.Graphics.DrawRectangle(Pens.Lime,
            e.Bounds.X - 1, e.Bounds.Y - 1,
            e.Bounds.Width - 1, e.Bounds.Height - 1);

        e.DrawText();

        e.DrawDefault = false;
    }

Я добавил:

* +1007 *

потому что без этого стиль по умолчанию заголовков столбцов был нарисован поверх моего собственного стиля, но поскольку свободное пространство на столбце заголовка столбца не содержит заголовков столбца, оно по-прежнему отображается в стиле по умолчанию.

Вот картинка, чтобы прояснить, что я имею в виду под свободным пространством Columnheader: Ссылка на изображение

Заранее спасибо.

1 Ответ

1 голос
/ 29 января 2010

Область, которая не закрашена черным, находится за пределами клиентской области заголовков - поэтому элемент управления не может быть нарисован.

Нет простого способа изменить цвет этой области.Посмотрите на этот вопрос и ответ на него , чтобы увидеть возможные варианты решения.

...