SearchInputEditor.xaml 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. <ResourceDictionary
  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:SAGA.DotNetUtils.WPF">
  5. <Style TargetType="{x:Type local:SearchInputEditor}">
  6. <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
  7. <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"/>
  8. <Setter Property="BorderBrush" Value="DarkGray"/>
  9. <Setter Property="BorderThickness" Value="1"/>
  10. <Setter Property="Padding" Value="1"/>
  11. <Setter Property="AllowDrop" Value="true"/>
  12. <Setter Property="FocusVisualStyle" Value="{x:Null}"/>
  13. <Setter Property="ScrollViewer.PanningMode" Value="VerticalFirst"/>
  14. <Setter Property="Stylus.IsFlicksEnabled" Value="False"/>
  15. <Setter Property="Template">
  16. <Setter.Value>
  17. <ControlTemplate TargetType="{x:Type local:SearchInputEditor}">
  18. <ControlTemplate.Resources>
  19. <Style TargetType="{x:Type Button}">
  20. <Setter Property="Background" Value="White"></Setter>
  21. <Setter Property="Opacity" Value="1"></Setter>
  22. <Setter Property="Padding" Value="5,0,5,0"></Setter>
  23. <Setter Property="HorizontalContentAlignment" Value="Center"></Setter>
  24. <Setter Property="Template">
  25. <Setter.Value>
  26. <ControlTemplate>
  27. <Border Name="Border" BorderThickness="{TemplateBinding Button.BorderThickness}" BorderBrush="{TemplateBinding Button.BorderBrush}" Background="{TemplateBinding Button.Background}" >
  28. <Grid Margin="{TemplateBinding Padding}" HorizontalAlignment="Stretch">
  29. <Grid.ColumnDefinitions>
  30. <ColumnDefinition Width="Auto"></ColumnDefinition>
  31. <ColumnDefinition></ColumnDefinition>
  32. </Grid.ColumnDefinitions>
  33. <ContentPresenter Grid.Column="1" Content="{TemplateBinding ContentControl.Content}" VerticalAlignment="Center" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"></ContentPresenter>
  34. </Grid>
  35. </Border>
  36. <ControlTemplate.Triggers>
  37. <Trigger Property="IsMouseOver" Value="true">
  38. <Setter Property="Background" Value="#FFCBC6C6"/>
  39. <Setter Property="BorderThickness" Value="1"></Setter>
  40. <Trigger.EnterActions>
  41. <BeginStoryboard>
  42. <Storyboard TargetName="Border">
  43. <DoubleAnimation Storyboard.TargetProperty="Opacity" To="0.5" Duration="0:0:1" />
  44. </Storyboard>
  45. </BeginStoryboard>
  46. </Trigger.EnterActions>
  47. <Trigger.ExitActions>
  48. <BeginStoryboard>
  49. <Storyboard TargetName="Border">
  50. <DoubleAnimation Storyboard.TargetProperty="Opacity" To="1" Duration="0:0:1" />
  51. </Storyboard>
  52. </BeginStoryboard>
  53. </Trigger.ExitActions>
  54. </Trigger>
  55. <Trigger Property="IsEnabled" Value="False">
  56. <Setter Property="Button.Foreground" TargetName="Border" Value="Gray" />
  57. </Trigger>
  58. </ControlTemplate.Triggers>
  59. </ControlTemplate>
  60. </Setter.Value>
  61. </Setter>
  62. </Style>
  63. </ControlTemplate.Resources>
  64. <Border Name="Bd" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
  65. <Grid >
  66. <Grid.ColumnDefinitions>
  67. <ColumnDefinition Width="Auto"></ColumnDefinition>
  68. <ColumnDefinition Width="*"></ColumnDefinition>
  69. <ColumnDefinition Width="Auto"></ColumnDefinition>
  70. <ColumnDefinition Width="Auto"></ColumnDefinition>
  71. </Grid.ColumnDefinitions>
  72. <Button Grid.Column="0" Name="BtnFlag" BorderThickness="0" Width="23" Height="23" VerticalAlignment="Center">
  73. <Button.Background>
  74. <ImageBrush>
  75. <ImageBrush.ImageSource>
  76. <BitmapImage UriSource="../Image/search.jpg"></BitmapImage>
  77. </ImageBrush.ImageSource>
  78. </ImageBrush>
  79. </Button.Background>
  80. </Button>
  81. <TextBox Grid.Column="1" x:Name="PART_ContentHost" BorderThickness="0" VerticalAlignment="Stretch" VerticalContentAlignment="Center" Text="{Binding Text,RelativeSource={RelativeSource TemplatedParent},Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
  82. <TextBlock Visibility="Collapsed" Grid.Column="1" IsHitTestVisible="False" Name="PART_WaterTextShow" VerticalAlignment="Center" Text="{TemplateBinding Property=WaterText}" Foreground="Gray"></TextBlock>
  83. <Button Grid.Column="2" Name="BtnClear" BorderThickness="0" >
  84. <TextBlock Text="x" VerticalAlignment="Center" FontSize="12"></TextBlock>
  85. </Button>
  86. <Button Grid.Column="3" Name="BtnComplete" Content="{TemplateBinding CommandContent}" BorderThickness="0" Command="{TemplateBinding Command}" CommandParameter="{TemplateBinding CommandParameter}"></Button>
  87. </Grid>
  88. </Border>
  89. <ControlTemplate.Triggers>
  90. <Trigger Property="Text" Value="">
  91. <Setter Property="Visibility" TargetName="PART_WaterTextShow" Value="Visible"/>
  92. <Setter Property="Visibility" TargetName="BtnClear" Value="Collapsed" />
  93. </Trigger>
  94. <Trigger Property="Text" Value="x:Null">
  95. <Setter Property="Visibility" TargetName="PART_WaterTextShow" Value="Visible"/>
  96. <Setter Property="Visibility" TargetName="BtnClear" Value="Collapsed" />
  97. </Trigger>
  98. <Trigger Property="IsEnabled" Value="false">
  99. <Setter Property="Background" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"/>
  100. <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
  101. </Trigger>
  102. </ControlTemplate.Triggers>
  103. </ControlTemplate>
  104. </Setter.Value>
  105. </Setter>
  106. </Style>
  107. </ResourceDictionary>