ToolStripLabel.xaml 2.0 KB

1234567891011121314151617181920212223242526272829303132
  1. <UserControl x:Class="CustomControls.ToolStripLabel" Style="{DynamicResource Style1}"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:local="clr-namespace:CustomControls">
  5. <UserControl.Resources>
  6. <Style x:Key="Style1" TargetType="{x:Type UserControl}">
  7. <Setter Property="VerticalContentAlignment" Value="Center"/>
  8. <Setter Property="Template">
  9. <Setter.Value>
  10. <ControlTemplate TargetType="{x:Type local:ToolStripLabel}">
  11. <StackPanel Orientation="Horizontal" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
  12. <Image x:Name="image" Source="{TemplateBinding Image}" Width="16" Height="16"/>
  13. <TextBlock x:Name="text" Text="{TemplateBinding Text}" Margin="4,0,4,0"/>
  14. </StackPanel>
  15. <ControlTemplate.Triggers>
  16. <Trigger Property="IsEnabled" Value="false">
  17. <Setter Property="Opacity" TargetName="image" Value="0.5" />
  18. <Setter Property="Opacity" TargetName="text" Value="0.5" />
  19. </Trigger>
  20. <Trigger Property="Image" Value="{x:Null}">
  21. <Setter Property="Visibility" TargetName="image" Value="Collapsed"/>
  22. </Trigger>
  23. <Trigger Property="Text" Value="">
  24. <Setter Property="Visibility" TargetName="text" Value="Collapsed"/>
  25. </Trigger>
  26. </ControlTemplate.Triggers>
  27. </ControlTemplate>
  28. </Setter.Value>
  29. </Setter>
  30. </Style>
  31. </UserControl.Resources>
  32. </UserControl>