FrameworkElement.RequestedTheme Propiedad

Definición

Obtiene o establece el tema de la interfaz de usuario que usa UIElement (y sus elementos secundarios) para la determinación de recursos. El tema de la interfaz de usuario que especifique con RequestedTheme puede invalidar el requestedTheme de nivel de aplicación.

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" .../>

Valor de propiedad

Valor de la enumeración, por ejemplo Light.

Comentarios

Cambiar el RequestedTheme valor está cambiando eficazmente el comportamiento de búsqueda de recursos para la plantilla predeterminada del elemento. Si cambia el valor a Light , la plantilla usa los valores de ResourceDictionary con clave "Light" en la colección ThemeDictionaries . Establecer el tema de la interfaz de usuario de forma diferente del tema de la aplicación suele ser adecuado para controles flotantes, como menús y controles flotantes.

Puede cambiar el valor de la RequestedTheme propiedad para cualquier elemento determinado en tiempo de ejecución. Esto contrasta con la propiedad Application.RequestedTheme , que produce una excepción si intenta establecerla mientras se ejecuta la aplicación.

El RequestedTheme valor establecido en un FrameworkElement heredará a los elementos anidados dentro del elemento donde RequestedTheme se establece, pero esa herencia se puede invalidar estableciendo RequestedTheme explícitamente de nuevo. Por ejemplo, en este ejemplo XAML, el elemento primario StackPanel establece el tema Lighten y ese valor hereda al primer elemento secundario TextBlock , pero no al segundo TextBlock porque establece el valor Dark en en su lugar.

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

La RequestedTheme propiedad se omite si el usuario se ejecuta en modo de contraste alto. Consulta Temas de contraste alto y ejemplo de estilo de contraste alto XAML.

Nota

En Windows, establecer RequestedTheme en ElementTheme.Default siempre dará como resultado que "Dark" sea el tema.

Se aplica a

Consulte también