TextBlock La propriété Text ne peut pas être définie via un déclencheur de style si non vide - pourquoi?

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

  •  03-07-2019
  •  | 
  •  

Question

Le code XAML ci-dessous ne fonctionne pas (le texte ne change pas lors du survol de la souris):

<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>

Mais si l'attribut Texte est manquant:

 <Grid>
    <TextBlock/>
</Grid>

Le texte change au passage de la souris. Tout le monde connaît la théorie derrière cela?

Était-ce utile?

La solution

Il s'agit d'un problème de priorité DependencyProperty lorsque vous définissez la propriété comme suit:

<TextBlock Text="original"/>

qui a la priorité sur la valeur définie dans le déclencheur.

voir

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top