Измените выбранный и несфокусированный стиль списка, чтобы не было выделено серым цветом

У меня действительно простой WPF ListBox с SelectionMode, установленным Multiple.

 

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

Я знаю, что это, вероятно, связано со стилем ListItem, но я не могу найти, где.

Приветствия.

Похожие: WPF ListView Неактивный цвет выделения

Я сделал что-то подобное, используя следующее в объединенном ResourceDictionary, это может помочь вам:

  

Это не ответ на вопрос, но я нашел это, когда искал способ отключить выбор в моих списках. Используя слегка измененную форму техники Guy’s & bendewey выше, выясняется, что вы можете указать отсутствие выбора в своем списке без замены элемента управления элементами или что-то в этом роде. Вот код, который я использовал:

    

Я также нашел следующую страницу MSDN:

MSDN: члены SystemColors (System.Windows)

Спасибо за помощь, ребята.

Более полным решением было бы, чтобы новая кисть ссылалась на HighlightColor:

     

Это гарантирует, что он использует тот же цвет и соответствует системной теме (даже если системная тема изменяется во время выполнения, благодаря DynamicResource).

Кстати, кажется, что последние версии WPF больше не используют для этого «ControlBrush», но более подходящий «InactiveSelectionHighlightBrush».

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

  

У меня также есть эта проблема. Но я решил это, используя IsSynchronizedWithCurrentItem = “True”:

  

Когда выбранные элементы становятся серыми, это потому, что ваш элемент управления теряет свою логическую направленность. У нескольких элементов управления есть возможность иметь логический фокус в одно и то же время. Таким простым решением для этого может быть предоставление ListBox FocusScope через FocusManager.

  
  • Создание BitmapImage из массива байтов
  • Как я могу захватить событие KeyDown на странице WPF или объекте UserControl?
  • Как привязать таблицу в наборе данных к datagrid WPF в C # и XAML
  • Закрыть окно из ViewModel
  • Как я могу создать поле со списком WPF шириной самого широкого элемента в XAML?
  • Обработка диалогов в WPF с помощью MVVM
  • Применение инсульта к текстовому блоку в WPF
  • Добавить информацию о форме в ListView, когда она создана
  • Как отформатировать число десятичных знаков в wpf с помощью стиля / шаблона?
  • Окно "на рабочем столе"
  • Как заставить детей StackPanel заполнить максимальное пространство вниз?
  • Interesting Posts

    Почему fork () дважды

    Использование обратной косой черты для удаления символов в cmd.exe (например, команда runas)

    Как изменить порядок меток граней в ggplot (пользовательские метки обертки граней)

    Как определить, какой шрифт используется браузером для рендеринга текста?

    Анатомия «утечки памяти»

    C # Drag-and-Drop: отображение перетаскиваемого элемента при перетаскивании

    Объект нельзя отбрасывать из DBNull в другие типы

    Почему я могу добавить именованные свойства в массив, как если бы это был объект?

    NSDateFormatter dateFromString возвращает nil

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

    objective-C: Как получить адрес маршрутизатора?

    Что делает ключевое слово «new» для структуры на C #?

    Трассировка стека или дополнительная информация о необработанном исключении в Xcode / iPhone

    Декодирование символов UTF8 в Objective C

    Bluetooth гарнитуры и появляется в звуковых устройствах, но отображается как отключено?

    Давайте будем гением компьютера.