Как применить тему WPF Fluent (+ с поддержкой темы Application.ThemeMode) к фону элемента управления?C#

Место общения программистов C#
Ответить
Anonymous
 Как применить тему WPF Fluent (+ с поддержкой темы Application.ThemeMode) к фону элемента управления?

Сообщение Anonymous »

.NET 9.0 представила встроенную поддержку тем Fluent для приложений WPF. Я использую его в своих приложениях, но у меня есть вопрос: как настроить фон элемента управления, скажем, Border, чтобы он отражал фон темы Fluent окна по умолчанию и реагировал на изменения ThemeMode?
Обратите внимание, что по умолчанию тема Fluent уже применяет как фон, так и осведомленность о теме к большинству элементов управления (

Код: Выделить всё

MenuItem, Grid, Button, TextBlock, ListView
, как вы это называете), но мой элемент управления, похоже, не имеет фона (он прозрачный), и я хотел бы применить к нему стиль темы WPF Fluent через XAML (или код программной части C#, если XAML невозможен), точно так же, как это по умолчанию происходит с элементами управления, такими как фон сетки или окна.
Для уточнения: новая тема Fluent поддерживает так называемый Application.ThemeMode и Окно.ThemeMode. Хотя это экспериментальный вариант, на данный момент это самый простой способ переключения между светлыми и темными темами режима Fluent. Если для Application.ThemeMode установлено, скажем, темный режим, весь пользовательский интерфейс приложения анимируется из светлого режима в темный. Я хотел бы, чтобы мой элемент управления не только отражал цвет темы Fluent, но и реагировал на изменения режима темы, то есть при изменении Application.ThemeMode, в идеале через XAML. Я не совсем уверен, как это сделать, поэтому буду признателен за любую помощь.
Я также пытался использовать Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}", но он просто устанавливает белый фон и не реагирует на изменения в темном режиме.

Подробнее здесь: https://stackoverflow.com/questions/798 ... e-to-a-con
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»