Заставить WPF Listview придерживаться темы Windows - PullRequest
5 голосов
/ 23 ноября 2010

Я опытный программист, который пытается изучать C # и WPF.Теперь я немного увлекаюсь деталями и хочу, чтобы мои приложения гармонировали с остальным пользовательским интерфейсом.Тем не менее, я не могу сделать это с помощью ListView.Моя настройка проста - добавить ListView в мое окно, привязать к ObservableCollection по моему выбору и запустить приложение.

В результате элементы всплывают просто отлично (будь то без смысласодержание).Тем не менее, прямоугольник выбора в ListView всегда темно-синий, что возвращает меня к дням до XP, в отличие от тематического выбора, который вы используете, используя визуальный стиль Windows 7 по умолчанию.Чтобы увидеть такой выбор в действии, просто выберите файл в проводнике или для другого примера посмотрите в «Программы и компоненты» на панели управления.Это выглядит красиво и красиво.

Как мне заставить WPF правильно оформить тему моего ListView в зависимости от моих пользовательских настроек?Я не хочу заново изобретать весь код выбора и добавлять тонны стилей и тому подобного - я хочу простое приложение для Windows, которое выглядит хорошо.Кнопка работает нормально, текстовые поля работают нормально, комбинированные списки выглядят отлично и т. Д. Это просто ListView, который выглядит совершенно дерьмово.

Редактировать: У меня нет проблем с использованием другого (очень, очень желательно нет)элемент управления третьей стороны), если требуется, но мне нужен список элементов, который выглядит как родной, и я подхожу к макету, аналогичному параметру «Плитки» в проводнике, для каждого выбранного элемента (значок, описание, дополнительная строка информации).Мне нужна только вертикальная прокрутка.

1 Ответ

4 голосов
/ 24 ноября 2010

Если вы используете ListView с ListView.View, установленным на GridView, то вы получите довольно похожий вид на Windows 7 Explorer. (По-моему, Atleast, или это тот взгляд, о котором вы говорите?). Также следует активной теме

Пример 1. ListView с GridView справа. Выбор активен

alt text

Пример 2. ListView с GridView справа. Выбор неактивен

alt text

Пример 3. Использование высококонтрастной темы # 2

alt text

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...