Est-il possible d'utiliser un convertisseur dans un style? Par exemple, je suis en train de créer un style TextBlock
dont le texte redimensionne basé sur la propriété ActualHeight
du TextBlock
. Le redimensionnement se ferait via un convertisseur.Est-il possible d'utiliser un convertisseur dans un style?
12
A
Répondre
26
Oui, cela est possible. Par exemple:
<Style TargetType="TextBlock">
<Setter Property="FontSize">
<Setter.Value>
<Binding Path="ActualHeight" RelativeSource="{RelativeSource Self}">
<Binding.Converter>
<MyConverter/>
</Binding.Converter>
</Binding>
</Setter.Value>
</Setter>
</Style>
Selon votre scénario exact, vous pourriez aussi être en mesure d'utiliser plus succincte:
<Style TargetType="TextBlock">
<Setter Property="FontSize" Value="{Binding ActualHeight, RelativeSource={RelativeSource Self}, Converter={StaticResource MyConverter}}"/>
</Style>
3
J'ai réussi à obtenir quelque chose de similaire au travail en utilisant:
<Setter Property="Text">
<Setter.Value>
<Binding Path="CompanyName">
<Binding.Converter>
<conv:UppercaseConverter/>
</Binding.Converter>
</Binding>
</Setter.Value>
</Setter>
Espérons que cela fonctionne pour vous aussi.
Yann
PS - CompanyName est le nom de la propriété réelle ViewModel je liant les textblock à
Merci - cela a fonctionné parfaitement! –
Sweet___________ –