2010-10-15 5 views
1

J'ai un style qui souligne le bloc de texte quand il est mouseovered ... Comme jamais j'ai besoin quand il est cliqué pour changer son poids de police en gras (sélectionné) .. une idée?Toggle style de bloc de texte!

+1

Je voudrais utiliser togglebutton basé sur des modèles à cette fin et changer le fontweight en gras lorsque la propriété ischecked est vraie – dnr3

Répondre

3

Exemple de code de ce DNR3 dit, un templated ToggleButton

<Style x:Key="BoldWhenClickedTextBlock" TargetType="ToggleButton" BasedOn="{StaticResource {x:Type ToggleButton}}"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="ToggleButton"> 
       <TextBlock x:Name="c_toggleButtonTextBlock" Text="{Binding RelativeSource={RelativeSource AncestorType={x:Type ToggleButton}}, Path=Content}"/> 
       <ControlTemplate.Triggers> 
        <Trigger Property="ToggleButton.IsMouseOver" Value="True"> 
         <Setter TargetName="c_toggleButtonTextBlock" Property="TextDecorations" Value="Underline"/> 
        </Trigger> 
        <Trigger Property="ToggleButton.IsChecked" Value="True"> 
         <Setter TargetName="c_toggleButtonTextBlock" Property="FontWeight" Value="Bold" /> 
        </Trigger> 
       </ControlTemplate.Triggers> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

Et puis le "TextBlock" ToggleButton peut utiliser avec

<ToggleButton Style="{StaticResource BoldWhenClickedTextBlock}" Content="My Text.."/>