TreeView: столбец внезапно серый - PullRequest
1 голос
/ 11 марта 2012

С 2 столбцами все работает правильно, весь фон в TreeView белый.

Но как только я добавляю третий столбец (все три являются CellRendererText по умолчанию), строки в первом внезапно имеют светло-серый фон.

Чтобы показать, что я имею в виду, я загрузил картинку: enter image description here

Как вы можете видеть у красной стрелки , фон в первом столбце серого цвета. Я НЕ установил это где-нибудь, так почему это происходит? Это выглядит действительно некрасиво.

Как вы можете видеть у синей стрелки , я установил цвет фона CellTextRenderer в этой строке на белый. К сожалению, он только устанавливает непосредственное пространство вокруг букв белым, поэтому остальная часть серого остается.

Зеленая стрелка указывает на третий столбец, который работает правильно.

.

В качестве обходного пути я попытался вставить пустой столбец перед первым столбцом.

Это все еще старый первый столбец (теперь второй), который имел серый фон. Так что в этой колонке должно быть что-то особенное. Может быть, столбец имеет серый фон, потому что он отсортирован? Это действительно единственная разница между этой колонкой и остальными.

Есть идеи, что это вызывает и как это можно предотвратить?

1 Ответ

1 голос
/ 23 марта 2012

Я вернулся к проблеме через несколько недель и выяснил, что именно эта линия вызывает серый фон:

column.SortIndicator = true;

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

В любом случае удаление этой строки решило проблему.:)

...