| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153 |
- <ResourceDictionary
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:Converters="clr-namespace:CustomUI.Converters"
- xmlns:ZUI="clr-namespace:CustomUI">
- <Converters:OffsetConverter x:Key="OffsetConverter" />
- <Style TargetType="{x:Type ZUI:ZToolTip}">
- <Setter Property="ToolTipService.HorizontalOffset" Value="0" />
- <Setter Property="ToolTipService.VerticalOffset" Value="0" />
- <Setter Property="Foreground" Value="White" />
- <Setter Property="BorderBrush" Value="#585D6B" />
- <Setter Property="BorderThickness" Value="0" />
- <Setter Property="Background" Value="#585D6B" />
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="{x:Type ZUI:ZToolTip}">
- <ZUI:AngleBorder
- x:Name="AngleBorder"
- Padding="10"
- VerticalAlignment="Center"
- Background="{TemplateBinding Background}"
- BorderBrush="{TemplateBinding BorderBrush}"
- BorderThickness="{TemplateBinding BorderThickness}"
- CornerRadius="4"
- Placement="{TemplateBinding PlacementEx}"
- SnapsToDevicePixels="True"
- TailHeight="6"
- TailHorizontalOffset="15"
- TailWidth="12"
- UseLayoutRounding="True">
- <ContentPresenter />
- </ZUI:AngleBorder>
- <ControlTemplate.Triggers>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="TopLeft">
- <Setter TargetName="AngleBorder" Property="Placement" Value="BottomLeft" />
- <Setter Property="Placement" Value="Top" />
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="TopCenter">
- <Setter TargetName="AngleBorder" Property="Placement" Value="BottomCenter" />
- <Setter Property="Placement" Value="Top" />
- <Setter Property="ToolTipService.HorizontalOffset">
- <Setter.Value>
- <MultiBinding Converter="{StaticResource OffsetConverter}" ConverterParameter="Center">
- <Binding Path="PlacementTarget.ActualWidth" RelativeSource="{RelativeSource Mode=Self}" />
- <Binding Path="ActualWidth" RelativeSource="{RelativeSource Mode=Self}" />
- </MultiBinding>
- </Setter.Value>
- </Setter>
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="TopRight">
- <Setter TargetName="AngleBorder" Property="Placement" Value="BottomRight" />
- <Setter Property="Placement" Value="Top" />
- <Setter Property="ToolTipService.HorizontalOffset">
- <Setter.Value>
- <MultiBinding Converter="{StaticResource OffsetConverter}" ConverterParameter="Right">
- <Binding Path="PlacementTarget.ActualWidth" RelativeSource="{RelativeSource Mode=Self}" />
- <Binding Path="ActualWidth" RelativeSource="{RelativeSource Mode=Self}" />
- </MultiBinding>
- </Setter.Value>
- </Setter>
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="BottomLeft">
- <Setter TargetName="AngleBorder" Property="Placement" Value="TopLeft" />
- <Setter Property="Placement" Value="Bottom" />
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="BottomCenter">
- <Setter TargetName="AngleBorder" Property="Placement" Value="TopCenter" />
- <Setter Property="Placement" Value="Bottom" />
- <Setter Property="ToolTipService.HorizontalOffset">
- <Setter.Value>
- <MultiBinding Converter="{StaticResource OffsetConverter}" ConverterParameter="Center">
- <Binding Path="PlacementTarget.ActualWidth" RelativeSource="{RelativeSource Mode=Self}" />
- <Binding Path="ActualWidth" RelativeSource="{RelativeSource Mode=Self}" />
- </MultiBinding>
- </Setter.Value>
- </Setter>
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="BottomRight">
- <Setter TargetName="AngleBorder" Property="Placement" Value="TopRight" />
- <Setter Property="Placement" Value="Bottom" />
- <Setter Property="ToolTipService.HorizontalOffset">
- <Setter.Value>
- <MultiBinding Converter="{StaticResource OffsetConverter}" ConverterParameter="Right">
- <Binding Path="PlacementTarget.ActualWidth" RelativeSource="{RelativeSource Mode=Self}" />
- <Binding Path="ActualWidth" RelativeSource="{RelativeSource Mode=Self}" />
- </MultiBinding>
- </Setter.Value>
- </Setter>
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="LeftTop">
- <Setter TargetName="AngleBorder" Property="Placement" Value="RightTop" />
- <Setter Property="Placement" Value="Left" />
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="LeftCenter">
- <Setter TargetName="AngleBorder" Property="Placement" Value="RightCenter" />
- <Setter Property="Placement" Value="Left" />
- <Setter Property="ToolTipService.VerticalOffset">
- <Setter.Value>
- <MultiBinding Converter="{StaticResource OffsetConverter}" ConverterParameter="Center">
- <Binding Path="PlacementTarget.ActualHeight" RelativeSource="{RelativeSource Mode=Self}" />
- <Binding Path="ActualHeight" RelativeSource="{RelativeSource Mode=Self}" />
- </MultiBinding>
- </Setter.Value>
- </Setter>
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="LeftBottom">
- <Setter TargetName="AngleBorder" Property="Placement" Value="RightBottom" />
- <Setter Property="Placement" Value="Left" />
- <Setter Property="ToolTipService.VerticalOffset">
- <Setter.Value>
- <MultiBinding Converter="{StaticResource OffsetConverter}" ConverterParameter="Right">
- <Binding Path="PlacementTarget.ActualHeight" RelativeSource="{RelativeSource Mode=Self}" />
- <Binding Path="ActualHeight" RelativeSource="{RelativeSource Mode=Self}" />
- </MultiBinding>
- </Setter.Value>
- </Setter>
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="RightTop">
- <Setter TargetName="AngleBorder" Property="Placement" Value="LeftTop" />
- <Setter Property="Placement" Value="Right" />
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="RightCenter">
- <Setter TargetName="AngleBorder" Property="Placement" Value="LeftCenter" />
- <Setter Property="Placement" Value="Right" />
- <Setter Property="ToolTipService.VerticalOffset">
- <Setter.Value>
- <MultiBinding Converter="{StaticResource OffsetConverter}" ConverterParameter="Center">
- <Binding Path="PlacementTarget.ActualHeight" RelativeSource="{RelativeSource Mode=Self}" />
- <Binding Path="ActualHeight" RelativeSource="{RelativeSource Mode=Self}" />
- </MultiBinding>
- </Setter.Value>
- </Setter>
- </DataTrigger>
- <DataTrigger Binding="{Binding PlacementEx, RelativeSource={RelativeSource Self}}" Value="RightBottom">
- <Setter TargetName="AngleBorder" Property="Placement" Value="LeftBottom" />
- <Setter Property="Placement" Value="Right" />
- <Setter Property="ToolTipService.VerticalOffset">
- <Setter.Value>
- <MultiBinding Converter="{StaticResource OffsetConverter}" ConverterParameter="Right">
- <Binding Path="PlacementTarget.ActualHeight" RelativeSource="{RelativeSource Mode=Self}" />
- <Binding Path="ActualHeight" RelativeSource="{RelativeSource Mode=Self}" />
- </MultiBinding>
- </Setter.Value>
- </Setter>
- </DataTrigger>
- </ControlTemplate.Triggers>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
- </ResourceDictionary>
|