SearchBarBaseStyle.xaml 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  3. xmlns:hc="clr-namespace:HandyControl.Controls"
  4. xmlns:interactivity="clr-namespace:HandyControl.Interactivity"
  5. xmlns:system="clr-namespace:System;assembly=mscorlib">
  6. <Style x:Key="SearchBarBaseStyle" BasedOn="{StaticResource TextBoxBaseStyle}" TargetType="hc:SearchBar">
  7. <Setter Property="Template">
  8. <Setter.Value>
  9. <ControlTemplate TargetType="hc:SearchBar">
  10. <hc:SimplePanel x:Name="root">
  11. <Border x:Name="border" CornerRadius="{Binding Path=(hc:BorderElement.CornerRadius),RelativeSource={RelativeSource TemplatedParent}}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="True"/>
  12. <Grid>
  13. <Grid.ColumnDefinitions>
  14. <ColumnDefinition/>
  15. <ColumnDefinition Width="Auto"/>
  16. </Grid.ColumnDefinitions>
  17. <ScrollViewer Margin="-2,0" Grid.Row="0" Grid.Column="0" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" x:Name="PART_ContentHost" Focusable="false" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Hidden"/>
  18. <Button Height="Auto" Width="Auto" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Command="interactivity:ControlCommands.Search" Style="{StaticResource ButtonIcon}" hc:IconElement.Width="14" Padding="{Binding Padding, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource ThicknessSplitConverter}, ConverterParameter='0,0,1,0'}" hc:IconElement.Geometry="{StaticResource SearchGeometry}" Grid.Column="1" Foreground="{TemplateBinding BorderBrush}" Focusable="False" Grid.Row="0"/>
  19. </Grid>
  20. </hc:SimplePanel>
  21. <ControlTemplate.Triggers>
  22. <Trigger Property="IsEnabled" Value="false">
  23. <Setter Property="Opacity" TargetName="root" Value="0.4"/>
  24. </Trigger>
  25. <Trigger Property="IsMouseOver" Value="true">
  26. <Setter Property="BorderBrush" Value="{DynamicResource SecondaryBorderBrush}"/>
  27. </Trigger>
  28. <Trigger Property="IsFocused" Value="true">
  29. <Setter Property="BorderBrush" Value="{DynamicResource PrimaryBrush}"/>
  30. </Trigger>
  31. </ControlTemplate.Triggers>
  32. </ControlTemplate>
  33. </Setter.Value>
  34. </Setter>
  35. </Style>
  36. <ControlTemplate x:Key="SearchBarExtendTopTemplate" TargetType="hc:SearchBar">
  37. <Grid>
  38. <Grid.RowDefinitions>
  39. <RowDefinition Height="Auto"/>
  40. <RowDefinition MinHeight="{Binding Path=(hc:InfoElement.MinContentHeight),RelativeSource={RelativeSource TemplatedParent}}" Height="{Binding Path=(hc:InfoElement.ContentHeight),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource Double2GridLengthConverter}}"/>
  41. </Grid.RowDefinitions>
  42. <DockPanel LastChildFill="True" Visibility="{Binding Path=(hc:InfoElement.Title),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource String2VisibilityConverter}}" HorizontalAlignment="{Binding Path=(hc:TitleElement.HorizontalAlignment),RelativeSource={RelativeSource TemplatedParent}}" Margin="{Binding Path=(hc:TitleElement.MarginOnTheTop),RelativeSource={RelativeSource TemplatedParent}}">
  43. <ContentPresenter DockPanel.Dock="Right" TextElement.Foreground="{DynamicResource DangerBrush}" Margin="4,0,0,0" Content="{Binding Path=(hc:InfoElement.Symbol),RelativeSource={RelativeSource TemplatedParent}}" Visibility="{Binding Path=(hc:InfoElement.Necessary),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource Boolean2VisibilityConverter}}"/>
  44. <TextBlock hc:TextBlockAttach.AutoTooltip="True" TextWrapping="NoWrap" TextTrimming="CharacterEllipsis" Text="{Binding Path=(hc:InfoElement.Title),RelativeSource={RelativeSource TemplatedParent}}"/>
  45. </DockPanel>
  46. <Border Grid.Row="1" x:Name="border" CornerRadius="{Binding Path=(hc:BorderElement.CornerRadius),RelativeSource={RelativeSource TemplatedParent}}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}"/>
  47. <Grid Grid.Row="1" SnapsToDevicePixels="true" x:Name="root">
  48. <Grid.ColumnDefinitions>
  49. <ColumnDefinition/>
  50. <ColumnDefinition Width="Auto"/>
  51. </Grid.ColumnDefinitions>
  52. <TextBlock VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Margin="{TemplateBinding Padding}" Visibility="{TemplateBinding Text,Converter={StaticResource String2VisibilityReConverter}}" HorizontalAlignment="Stretch" Style="{StaticResource TextBlockDefaultThiLight}" Text="{Binding Path=(hc:InfoElement.Placeholder),RelativeSource={RelativeSource TemplatedParent}}"/>
  53. <ScrollViewer Margin="-2,0,0,0" Grid.Column="0" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" x:Name="PART_ContentHost" Focusable="false" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Hidden"/>
  54. <Button Height="Auto" Width="Auto" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Command="interactivity:ControlCommands.Search" hc:IconElement.Width="14" Padding="{Binding Padding, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource ThicknessSplitConverter}, ConverterParameter='0,0,1,0'}" Grid.Column="1" Style="{StaticResource ButtonIcon}" hc:IconElement.Geometry="{StaticResource SearchGeometry}" Foreground="{TemplateBinding BorderBrush}"/>
  55. </Grid>
  56. </Grid>
  57. <ControlTemplate.Triggers>
  58. <Trigger Property="IsEnabled" Value="false">
  59. <Setter Property="Opacity" TargetName="border" Value="0.4"/>
  60. <Setter Property="Opacity" TargetName="root" Value="0.4"/>
  61. </Trigger>
  62. <Trigger Property="IsMouseOver" Value="true">
  63. <Setter Property="BorderBrush" Value="{DynamicResource SecondaryBorderBrush}"/>
  64. </Trigger>
  65. <Trigger Property="IsFocused" Value="true">
  66. <Setter Property="BorderBrush" Value="{DynamicResource PrimaryBrush}"/>
  67. </Trigger>
  68. </ControlTemplate.Triggers>
  69. </ControlTemplate>
  70. <ControlTemplate x:Key="SearchBarExtendLeftTemplate" TargetType="hc:SearchBar">
  71. <Grid MinHeight="{Binding Path=(hc:InfoElement.MinContentHeight),RelativeSource={RelativeSource TemplatedParent}}" Height="{Binding Path=(hc:InfoElement.ContentHeight),RelativeSource={RelativeSource TemplatedParent}}">
  72. <Grid.ColumnDefinitions>
  73. <ColumnDefinition Width="{Binding Path=(hc:InfoElement.TitleWidth),RelativeSource={RelativeSource TemplatedParent}}"/>
  74. <ColumnDefinition/>
  75. </Grid.ColumnDefinitions>
  76. <DockPanel LastChildFill="True" Visibility="{Binding Path=(hc:InfoElement.Title),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource String2VisibilityConverter}}" HorizontalAlignment="{Binding Path=(hc:TitleElement.HorizontalAlignment),RelativeSource={RelativeSource TemplatedParent}}" VerticalAlignment="{Binding Path=(hc:TitleElement.VerticalAlignment),RelativeSource={RelativeSource TemplatedParent}}" Margin="{Binding Path=(hc:TitleElement.MarginOnTheLeft),RelativeSource={RelativeSource TemplatedParent}}">
  77. <ContentPresenter DockPanel.Dock="Right" TextElement.Foreground="{DynamicResource DangerBrush}" Margin="4,0,0,0" Content="{Binding Path=(hc:InfoElement.Symbol),RelativeSource={RelativeSource TemplatedParent}}" Visibility="{Binding Path=(hc:InfoElement.Necessary),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource Boolean2VisibilityConverter}}"/>
  78. <TextBlock hc:TextBlockAttach.AutoTooltip="True" TextWrapping="NoWrap" TextTrimming="CharacterEllipsis" Text="{Binding Path=(hc:InfoElement.Title),RelativeSource={RelativeSource TemplatedParent}}"/>
  79. </DockPanel>
  80. <Border Grid.Column="1" x:Name="border" CornerRadius="{Binding Path=(hc:BorderElement.CornerRadius),RelativeSource={RelativeSource TemplatedParent}}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="True"/>
  81. <Grid Grid.Column="1" SnapsToDevicePixels="true" x:Name="root" >
  82. <Grid.ColumnDefinitions>
  83. <ColumnDefinition/>
  84. <ColumnDefinition Width="Auto"/>
  85. </Grid.ColumnDefinitions>
  86. <TextBlock VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Margin="{TemplateBinding Padding}" Visibility="{TemplateBinding Text,Converter={StaticResource String2VisibilityReConverter}}" HorizontalAlignment="Stretch" Style="{StaticResource TextBlockDefaultThiLight}" Text="{Binding Path=(hc:InfoElement.Placeholder),RelativeSource={RelativeSource TemplatedParent}}"/>
  87. <ScrollViewer Margin="-2,0,0,0" Grid.Column="0" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" x:Name="PART_ContentHost" Focusable="false" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Hidden"/>
  88. <Button Height="Auto" Width="Auto" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Command="interactivity:ControlCommands.Search" hc:IconElement.Width="14" Padding="{Binding Padding, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource ThicknessSplitConverter}, ConverterParameter='0,0,1,0'}" Grid.Column="1" Style="{StaticResource ButtonIcon}" hc:IconElement.Geometry="{StaticResource SearchGeometry}" Foreground="{TemplateBinding BorderBrush}"/>
  89. </Grid>
  90. </Grid>
  91. <ControlTemplate.Triggers>
  92. <Trigger Property="IsEnabled" Value="false">
  93. <Setter Property="Opacity" TargetName="border" Value="0.4"/>
  94. <Setter Property="Opacity" TargetName="root" Value="0.4"/>
  95. </Trigger>
  96. <Trigger Property="IsMouseOver" Value="true">
  97. <Setter Property="BorderBrush" Value="{DynamicResource SecondaryBorderBrush}"/>
  98. </Trigger>
  99. <Trigger Property="IsFocused" Value="true">
  100. <Setter Property="BorderBrush" Value="{DynamicResource PrimaryBrush}"/>
  101. </Trigger>
  102. </ControlTemplate.Triggers>
  103. </ControlTemplate>
  104. <Style x:Key="SearchBarExtendBaseStyle" BasedOn="{StaticResource SearchBarBaseStyle}" TargetType="hc:SearchBar">
  105. <Setter Property="Height" Value="Auto"/>
  106. <Setter Property="hc:InfoElement.Symbol" Value="●"/>
  107. <Setter Property="hc:InfoElement.ContentHeight" Value="{x:Static system:Double.NaN}"/>
  108. <Setter Property="hc:InfoElement.MinContentHeight" Value="{StaticResource DefaultControlHeight}"/>
  109. <Setter Property="Template" Value="{StaticResource SearchBarExtendTopTemplate}"/>
  110. <Style.Triggers>
  111. <Trigger Property="hc:InfoElement.TitlePlacement" Value="Left">
  112. <Setter Property="Template" Value="{StaticResource SearchBarExtendLeftTemplate}"/>
  113. <Setter Property="Width" Value="Auto"/>
  114. </Trigger>
  115. </Style.Triggers>
  116. </Style>
  117. <ControlTemplate x:Key="SearchBarPlusTopTemplate" TargetType="hc:SearchBar">
  118. <Grid>
  119. <Grid.RowDefinitions>
  120. <RowDefinition Height="Auto"/>
  121. <RowDefinition MinHeight="{Binding Path=(hc:InfoElement.MinContentHeight),RelativeSource={RelativeSource TemplatedParent}}" Height="{Binding Path=(hc:InfoElement.ContentHeight),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource Double2GridLengthConverter}}"/>
  122. </Grid.RowDefinitions>
  123. <DockPanel LastChildFill="True" Visibility="{Binding Path=(hc:InfoElement.Title),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource String2VisibilityConverter}}" HorizontalAlignment="{Binding Path=(hc:TitleElement.HorizontalAlignment),RelativeSource={RelativeSource TemplatedParent}}" Margin="{Binding Path=(hc:TitleElement.MarginOnTheTop),RelativeSource={RelativeSource TemplatedParent}}">
  124. <ContentPresenter DockPanel.Dock="Right" TextElement.Foreground="{DynamicResource DangerBrush}" Margin="4,0,0,0" Content="{Binding Path=(hc:InfoElement.Symbol),RelativeSource={RelativeSource TemplatedParent}}" Visibility="{Binding Path=(hc:InfoElement.Necessary),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource Boolean2VisibilityConverter}}"/>
  125. <TextBlock hc:TextBlockAttach.AutoTooltip="True" TextWrapping="NoWrap" TextTrimming="CharacterEllipsis" Text="{Binding Path=(hc:InfoElement.Title),RelativeSource={RelativeSource TemplatedParent}}"/>
  126. </DockPanel>
  127. <Border Grid.Row="1" x:Name="border" CornerRadius="{Binding Path=(hc:BorderElement.CornerRadius),RelativeSource={RelativeSource TemplatedParent}}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}"/>
  128. <Grid Grid.Row="1" SnapsToDevicePixels="true" x:Name="root">
  129. <Grid.ColumnDefinitions>
  130. <ColumnDefinition/>
  131. <ColumnDefinition Width="Auto"/>
  132. <ColumnDefinition Width="Auto"/>
  133. </Grid.ColumnDefinitions>
  134. <Button Height="Auto" Width="Auto" HorizontalContentAlignment="Left" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Command="interactivity:ControlCommands.Clear" hc:IconElement.Width="14" Padding="0,0,2,0" Visibility="Collapsed" Name="ButtonClear" Grid.Column="1" Style="{StaticResource ButtonIcon}" hc:IconElement.Geometry="{StaticResource DeleteFillCircleGeometry}" Foreground="{TemplateBinding BorderBrush}"/>
  135. <Button Height="Auto" Width="Auto" HorizontalContentAlignment="Left" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Command="interactivity:ControlCommands.Search" hc:IconElement.Width="14" Padding="{Binding Padding, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource ThicknessSplitConverter}, ConverterParameter='0,0,1,0'}" Style="{StaticResource ButtonIcon}" hc:IconElement.Geometry="{StaticResource SearchGeometry}" Grid.Column="2" Foreground="{TemplateBinding BorderBrush}" Focusable="False" Grid.Row="0"/>
  136. <TextBlock HorizontalAlignment="Stretch" Text="{Binding Path=(hc:InfoElement.Placeholder),RelativeSource={RelativeSource TemplatedParent}}" Grid.Row="0" Grid.Column="0" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Style="{StaticResource TextBlockDefaultThiLight}" Margin="{TemplateBinding Padding}" Visibility="{TemplateBinding Text,Converter={StaticResource String2VisibilityReConverter}}"/>
  137. <ScrollViewer Margin="-2,0" Grid.Row="0" Grid.Column="0" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" x:Name="PART_ContentHost" Focusable="false" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Hidden"/>
  138. </Grid>
  139. </Grid>
  140. <ControlTemplate.Triggers>
  141. <Trigger Property="IsEnabled" Value="false">
  142. <Setter Property="Opacity" TargetName="border" Value="0.4"/>
  143. <Setter Property="Opacity" TargetName="root" Value="0.4"/>
  144. </Trigger>
  145. <Trigger Property="IsMouseOver" Value="true" SourceName="root">
  146. <Setter Property="BorderBrush" Value="{DynamicResource SecondaryBorderBrush}"/>
  147. </Trigger>
  148. <MultiTrigger>
  149. <MultiTrigger.Conditions>
  150. <Condition Property="IsMouseOver" Value="true" SourceName="root"/>
  151. <Condition Property="hc:InfoElement.ShowClearButton" Value="True"/>
  152. </MultiTrigger.Conditions>
  153. <Setter Property="Visibility" Value="Visible" TargetName="ButtonClear"/>
  154. </MultiTrigger>
  155. <Trigger Property="IsFocused" Value="true">
  156. <Setter Property="BorderBrush" Value="{DynamicResource PrimaryBrush}"/>
  157. </Trigger>
  158. </ControlTemplate.Triggers>
  159. </ControlTemplate>
  160. <ControlTemplate x:Key="SearchBarPlusLeftTemplate" TargetType="hc:SearchBar">
  161. <Grid MinHeight="{Binding Path=(hc:InfoElement.MinContentHeight),RelativeSource={RelativeSource TemplatedParent}}" Height="{Binding Path=(hc:InfoElement.ContentHeight),RelativeSource={RelativeSource TemplatedParent}}">
  162. <Grid.ColumnDefinitions>
  163. <ColumnDefinition Width="{Binding Path=(hc:InfoElement.TitleWidth),RelativeSource={RelativeSource TemplatedParent}}"/>
  164. <ColumnDefinition/>
  165. </Grid.ColumnDefinitions>
  166. <DockPanel LastChildFill="True" Visibility="{Binding Path=(hc:InfoElement.Title),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource String2VisibilityConverter}}" HorizontalAlignment="{Binding Path=(hc:TitleElement.HorizontalAlignment),RelativeSource={RelativeSource TemplatedParent}}" VerticalAlignment="{Binding Path=(hc:TitleElement.VerticalAlignment),RelativeSource={RelativeSource TemplatedParent}}" Margin="{Binding Path=(hc:TitleElement.MarginOnTheLeft),RelativeSource={RelativeSource TemplatedParent}}">
  167. <ContentPresenter DockPanel.Dock="Right" TextElement.Foreground="{DynamicResource DangerBrush}" Margin="4,0,0,0" Content="{Binding Path=(hc:InfoElement.Symbol),RelativeSource={RelativeSource TemplatedParent}}" Visibility="{Binding Path=(hc:InfoElement.Necessary),RelativeSource={RelativeSource TemplatedParent},Converter={StaticResource Boolean2VisibilityConverter}}"/>
  168. <TextBlock hc:TextBlockAttach.AutoTooltip="True" TextWrapping="NoWrap" TextTrimming="CharacterEllipsis" Text="{Binding Path=(hc:InfoElement.Title),RelativeSource={RelativeSource TemplatedParent}}"/>
  169. </DockPanel>
  170. <Border Grid.Column="1" x:Name="border" CornerRadius="{Binding Path=(hc:BorderElement.CornerRadius),RelativeSource={RelativeSource TemplatedParent}}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}"/>
  171. <Grid Grid.Column="1" SnapsToDevicePixels="true" x:Name="root" >
  172. <Grid.ColumnDefinitions>
  173. <ColumnDefinition/>
  174. <ColumnDefinition Width="Auto"/>
  175. <ColumnDefinition Width="Auto"/>
  176. </Grid.ColumnDefinitions>
  177. <Button Height="Auto" Width="Auto" HorizontalContentAlignment="Left" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Command="interactivity:ControlCommands.Clear" hc:IconElement.Width="14" Padding="0,0,2,0" Visibility="Collapsed" Name="ButtonClear" Grid.Column="1" Style="{StaticResource ButtonIcon}" hc:IconElement.Geometry="{StaticResource DeleteFillCircleGeometry}" Foreground="{TemplateBinding BorderBrush}"/>
  178. <Button Height="Auto" Width="Auto" HorizontalContentAlignment="Left" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Command="interactivity:ControlCommands.Search" hc:IconElement.Width="14" Padding="{Binding Padding, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource ThicknessSplitConverter}, ConverterParameter='0,0,1,0'}" Style="{StaticResource ButtonIcon}" hc:IconElement.Geometry="{StaticResource SearchGeometry}" Grid.Column="2" Foreground="{TemplateBinding BorderBrush}" Focusable="False" Grid.Row="0"/>
  179. <TextBlock HorizontalAlignment="Stretch" Text="{Binding Path=(hc:InfoElement.Placeholder),RelativeSource={RelativeSource TemplatedParent}}" Grid.Row="0" Grid.Column="0" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Style="{StaticResource TextBlockDefaultThiLight}" Margin="{TemplateBinding Padding}" Visibility="{TemplateBinding Text,Converter={StaticResource String2VisibilityReConverter}}"/>
  180. <ScrollViewer Margin="-2,0" Grid.Row="0" Grid.Column="0" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" x:Name="PART_ContentHost" Focusable="false" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Hidden"/>
  181. </Grid>
  182. </Grid>
  183. <ControlTemplate.Triggers>
  184. <Trigger Property="IsEnabled" Value="false">
  185. <Setter Property="Opacity" TargetName="border" Value="0.4"/>
  186. <Setter Property="Opacity" TargetName="root" Value="0.4"/>
  187. </Trigger>
  188. <Trigger Property="IsMouseOver" Value="true" SourceName="root">
  189. <Setter Property="BorderBrush" Value="{DynamicResource SecondaryBorderBrush}"/>
  190. </Trigger>
  191. <MultiTrigger>
  192. <MultiTrigger.Conditions>
  193. <Condition Property="IsMouseOver" Value="true" SourceName="root"/>
  194. <Condition Property="hc:InfoElement.ShowClearButton" Value="True"/>
  195. </MultiTrigger.Conditions>
  196. <Setter Property="Visibility" Value="Visible" TargetName="ButtonClear"/>
  197. </MultiTrigger>
  198. <Trigger Property="IsFocused" Value="true">
  199. <Setter Property="BorderBrush" Value="{DynamicResource PrimaryBrush}"/>
  200. </Trigger>
  201. </ControlTemplate.Triggers>
  202. </ControlTemplate>
  203. <Style x:Key="SearchBarPlusBaseStyle" BasedOn="{StaticResource SearchBarExtendBaseStyle}" TargetType="hc:SearchBar">
  204. <Setter Property="Template" Value="{StaticResource SearchBarPlusTopTemplate}"/>
  205. <Style.Triggers>
  206. <Trigger Property="hc:InfoElement.TitlePlacement" Value="Left">
  207. <Setter Property="Template" Value="{StaticResource SearchBarPlusLeftTemplate}"/>
  208. <Setter Property="Width" Value="Auto"/>
  209. </Trigger>
  210. </Style.Triggers>
  211. </Style>
  212. </ResourceDictionary>