FrameworkElement.RequestedTheme Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define o tema da interface do usuário que é usado pelo UIElement (e seus elementos filho) para determinação de recursos. O tema da interface do usuário que você especificar RequestedTheme pode substituir o RequestedTheme no nível do aplicativo.
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 da propriedade
Um valor da enumeração, por exemplo Light.
Comentários
A alteração do RequestedTheme valor está efetivamente alterando o comportamento de pesquisa de recursos para o modelo padrão do elemento. Se você alterar o valor para Light , em seguida, o modelo usará os valores do ResourceDictionary que é chaveado como "Light" na coleção ThemeDictionaries . Definir o tema da interface do usuário de forma diferente do tema do aplicativo geralmente é apropriado para controles flutuantes, como menus e submenus.
Você pode alterar o valor da RequestedTheme propriedade para qualquer elemento determinado em tempo de execução. Isso contrasta com a propriedade Application.RequestedTheme , que gera uma exceção se você tentar defini-la enquanto o aplicativo está em execução.
O RequestedTheme valor definido em um FrameworkElement herdará a todos os elementos aninhados dentro do elemento onde RequestedTheme está definido, mas essa herança pode ser substituída definindo RequestedTheme explicitamente novamente. Por exemplo, neste exemplo XAML, o StackPanel pai define o tema Lightcomo , e esse valor herda para o primeiro elemento filho TextBlock , mas não para o segundo TextBlock porque ele está definindo o valor como Dark em vez disso.
<StackPanel RequestedTheme="Light">
<TextBlock>Text using light theme.</TextBlock>
<TextBlock RequestedTheme="Dark">Text using dark theme.</TextBlock>
</StackPanel>
A RequestedTheme propriedade será ignorada se o usuário estiver em execução no modo de alto contraste. Veja temas de alto contraste e exemplo de estilo de alto contraste XAML.
Note
Em Windows, definir RequestedTheme como ElementTheme.Default sempre resultará em "Escuro" como o tema.