Почему UWP ApplicationPageBackgroundThemeBrush всегда белый?



Я начинающий. У меня ниже простейший код:



<Page
x:Class="ClientFramework.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:ClientFramework"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
</Grid>
</Page>


Я тестирую его в эмуляторе Windows mobile 10. Независимо от того, как я изменяю тему ОС, темный или светлый, фон моего приложения всегда белый. Итак, как правильно установить зависимые от темы цвета для всего приложения?

672   2  

2 ответов:

В конце концов я узнаю о проблеме, погуглив. Проблема вызвана шаблоном проекта VS2015. В приложении.xaml, есть строка для установки RequestedTheme= "Light". Я удалил линию, и теперь все в порядке. Потратил впустую 2 часа. Надеюсь, вы понимаете мой ответ и поэтому сэкономите время.

Https://social.msdn.microsoft.com/Forums/vstudio/en-US/c12cdba4-093f-474a-9d21-6e447aaa2adf/uwp-applicationpagebackgroundthemebrush-is-always-white?forum=wpdevelop&prof=required

Установите фон для элемента <Grid> следующим образом:

<Grid Background="Blue"></Grid>

Для текста переднего плана можно задать стиль по умолчанию в приложении.Xaml вот так:

<App.Resources>
  <Style TargetType="TextBox">
    <Setter Property="Foreground" Value="Red" />
  </Style>
</App Resources>

Пока вы устанавливаете стили для имен элементов, а не для именованных объектов, стиль будет применяться ко всем элементам этого типа. Вы также можете наследовать стили, чтобы повторить часто используемые стили.

Comments

    Ничего не найдено.