Listbox problema item de primeiro plano
-
03-07-2019 - |
Pergunta
Eu estou enfrentando um problema com um dos meus XBAP (aplicativo de navegador WPF) projetos:
Aqui eu tenho duas caixas de listagem:
- Uma uma simples lista de conteúdo de texto contendo
- Segundo um contendo um expansor como cada item:
alt http://i44.tinypic.com/117bpj4.jpg texto
Agora, quando eu clicar sobre o item na primeira caixa de listagem (no lado esquerdo), o primeiro plano muda para branco e, em seguida, muda de volta para o preto se outro item é selecionado.
Onde como para um item na segunda caixa lista (lado direito), quando eu clicar sobre o item, o primeiro plano permanece preto. Isso ocorre porque o conteúdo do texto em si é contido dentro do controle Expander:
alt http://i39.tinypic.com/124vn6u.jpg texto
Agora, como faço para fazer a cor Expander controle Primeiro Plano comportam semelhante a quando um item de caixa de listagem é selecionado / selecção é alterado? Existe alguma propriedade de dependência que eu posso usar para fazer isso?
Nota: eu quero a segunda caixa lista (direita) para se comportar exatamente similar à primeira (esquerda) com a cor de primeiro plano respeito
.Solução
Basta adicionar Foreground="{TemplateBinding TextElement.Foreground}"
aos elementos no modelo como este
<DataTemplate DataType="{x:Type l:City}">
<Expander
Header="Click to Expand"
Foreground="{TemplateBinding TextElement.Foreground}"
>
<TextBlock
Text="{Binding Name}"
Foreground="{TemplateBinding TextElement.Foreground}"
/>
</Expander>
</DataTemplate>