Я создал новое приложение Windows Forms (C#) с одной простой формой, содержащей ListView. Тогда я изменил View Property к деталям и увеличение размера шрифта, используемого в этом ListView и вот результат:Тема Windows, влияющая на заголовок ListView
Вот как это выглядит на Windows XP с Windows Classic тему:
и вот результат с темой Windows XP:
я могу предотвратить появление моего приложения будут затронуты Visual Styles либо путем удаления Application.EnableVisualStyles()
вызова или путем изменения Application.VisualStyleState
:
Несмотря на то, что это изменение приводит к тому, что ListView имеет желаемый внешний вид, он также влияет на внешний вид других элементов управления. Я бы хотел, чтобы мой ListView был единственным элементом управления, на который не влияют визуальные стили.
Я также обнаружил, аналогичные вопросы, которые пытаются справиться с ней:
Can you turn off visual styles/theming for just a single windows control?
How do I disable visual styles for just one control, and not its children?
К сожалению, ни одно из указанных решений не работает. Похоже, что заголовок будет состоять из некоторых элементов управления, на которые влияют визуальные стили, даже если визуальные стили для управления ListView отключены.
Любое решение C#, которое препятствовало бы визуальным стилям влиять на внешний вид заголовка ListView, было бы оценено.
Поскольку это основано на решении, предложенном Камилом Лачем, я награждаю его ответ щедростью, которую я предлагал. – LihO