La propiedad TextBlock Text no se puede establecer a través del desencadenador de estilo si no está vacío, ¿por qué?
Pregunta
El XAML a continuación no funciona (el texto no cambia cuando se desplaza):
<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>
Pero, si falta el atributo Texto:
<Grid>
<TextBlock/>
</Grid>
El texto cambia al pasar el mouse por encima. ¿Alguien sabe la teoría detrás de esto?
Solución
Es un problema de prioridad de DependencyProperty, cuando realmente configura la propiedad como en:
<TextBlock Text="original"/>
que tiene prioridad sobre el valor establecido en el activador.
ver
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow