TextBlock propriedade Text não pode ser definido por meio de estilo gatilho se não vazia - por quê?

StackOverflow https://stackoverflow.com/questions/812822

  •  03-07-2019
  •  | 
  •  

Pergunta

O XAML a seguir não funciona (o texto não mudar quando passar o mouse sobre):

<Window.Resources>
    <Style TargetType="TextBlock">
        <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="true">
                <Setter Property="Text" Value="hover"/>
            </Trigger>
        </Style.Triggers>
    </Style>
</Window.Resources>
<Grid>
    <TextBlock Text="original"/>
</Grid>

Mas, se o atributo de texto está faltando:

 <Grid>
    <TextBlock/>
</Grid>

O texto muda no mouse sobre. Qualquer um sabe a teoria por trás disso?

Foi útil?

Solução

É uma questão DependencyProperty precedência, quando você realmente definir a propriedade como em:

<TextBlock Text="original"/>

que tem precedência sobre o valor definido no gatilho.

veja

http://msdn.microsoft.com/en-us/library /ms743230.aspx

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top