FrameworkElement.RequestedTheme Свойство

Определение

Возвращает или задает тему пользовательского интерфейса, используемую элементом UIElement (и его дочерними элементами) для определения ресурсов. Тема пользовательского интерфейса, указанная с помощью RequestedTheme , может переопределить элемент RequestedTheme на уровне приложения.

public:
 property ElementTheme RequestedTheme { ElementTheme get(); void set(ElementTheme value); };
ElementTheme RequestedTheme();

void RequestedTheme(ElementTheme value);
public ElementTheme RequestedTheme { get; set; }
var elementTheme = frameworkElement.requestedTheme;
frameworkElement.requestedTheme = elementTheme;
Public Property RequestedTheme As ElementTheme
<uiElement RequestedTheme="elementThemeMemberName" .../>

Значение свойства

Значение перечисления, например Light.

Комментарии

RequestedTheme Изменение значения фактически изменяет поведение поиска ресурсов для шаблона элемента по умолчанию. Если изменить значение на Light , шаблон использует значения из ResourceDictionary , который имеет ключ "Light" в коллекции ThemeDictionaries . Настройка темы пользовательского интерфейса, отличной от темы приложения, часто подходит для плавающих элементов управления, таких как меню и всплывающие элементы.

Вы можете изменить значение свойства для любого заданного RequestedTheme элемента во время выполнения. Это отличается от свойства Application.RequestedTheme , которое создает исключение при попытке задать его во время работы приложения.

Значение RequestedTheme , заданное для FrameworkElement, наследует все элементы, вложенные в элемент , где RequestedTheme задано , но это наследование можно переопределить, явно задав RequestedTheme еще раз. Например, в этом примере XAML родительский StackPanel задает для темы Lightзначение , и это значение наследует первый дочерний элемент TextBlock , но не второй TextBlock , так как вместо этого задается значение Dark .

<StackPanel RequestedTheme="Light">
  <TextBlock>Text using light theme.</TextBlock>
  <TextBlock RequestedTheme="Dark">Text using dark theme.</TextBlock>
</StackPanel>

Свойство RequestedTheme игнорируется, если пользователь работает в режиме высокой контрастности. См. статью Темы с высокой контрастностью и Примеры стилей xaml с высокой контрастностью.

Примечание

В Windows для параметра RequestedTheme значение ElementTheme.Default всегда будет темой.

Применяется к

См. также раздел