SharpsAnnotProperty.xaml 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246
  1. <UserControl x:Class="PDF_Office.Views.PropertyPanel.AnnotPanel.SharpsAnnotProperty"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:local="clr-namespace:PDF_Office.Views.PropertyPanel.AnnotPanel"
  7. xmlns:cus="clr-namespace:PDF_Office.CustomControl"
  8. xmlns:Convert="clr-namespace:PDF_Office.DataConvert"
  9. mc:Ignorable="d"
  10. d:DesignHeight="450" d:DesignWidth="800">
  11. <UserControl.Resources>
  12. <ResourceDictionary>
  13. <ResourceDictionary.MergedDictionaries>
  14. <ResourceDictionary Source="../../../Styles/SliderStyle.xaml"></ResourceDictionary>
  15. <ResourceDictionary Source="../../../Styles/CustomBtnStyle.xaml"/>
  16. </ResourceDictionary.MergedDictionaries>
  17. <Convert:ColorToBrushConverter x:Key="ColorToBrushConvert"></Convert:ColorToBrushConverter>
  18. <Convert:CheckToVisibleMutiConvert x:Key="CheckToVisibleMutiConvert"/>
  19. <DataTemplate x:Key="listboxData">
  20. <Ellipse Height="20" Width="20" Fill="{Binding}"/>
  21. </DataTemplate>
  22. <Style x:Key="line1Style" TargetType="{x:Type Line}">
  23. <Setter Property="Visibility">
  24. <Setter.Value>
  25. <MultiBinding Converter="{StaticResource CheckToVisibleMutiConvert}">
  26. <Binding ElementName="SharpRectBtn" Path="IsChecked"/>
  27. <Binding ElementName="SharpCircleBtn" Path="IsChecked"/>
  28. </MultiBinding>
  29. </Setter.Value>
  30. </Setter>
  31. </Style>
  32. <Style x:Key="line2Style" TargetType="{x:Type Line}">
  33. <Setter Property="Visibility">
  34. <Setter.Value>
  35. <MultiBinding Converter="{StaticResource CheckToVisibleMutiConvert}">
  36. <Binding ElementName="SharpCircleBtn" Path="IsChecked"/>
  37. <Binding ElementName="SharpArrowBtn" Path="IsChecked"/>
  38. </MultiBinding>
  39. </Setter.Value>
  40. </Setter>
  41. </Style>
  42. <Style x:Key="line3Style" TargetType="{x:Type Line}">
  43. <Setter Property="Visibility">
  44. <Setter.Value>
  45. <MultiBinding Converter="{StaticResource CheckToVisibleMutiConvert}">
  46. <Binding ElementName="SharpArrowBtn" Path="IsChecked"/>
  47. <Binding ElementName="SharpLineBtn" Path="IsChecked"/>
  48. </MultiBinding>
  49. </Setter.Value>
  50. </Setter>
  51. </Style>
  52. <ContextMenu x:Key="FlyoutMenu" FontSize="14"
  53. >
  54. <ContextMenu.ItemContainerStyle>
  55. <Style TargetType="MenuItem">
  56. <Setter Property="Padding" Value="0,7,0,7"/>
  57. <Setter Property="VerticalContentAlignment" Value="Center"/>
  58. </Style>
  59. </ContextMenu.ItemContainerStyle>
  60. <MenuItem Name="ChangeColorMenuItem" Click="ChangeColorMenuItem_Click" Header="更改颜色" IsEnabled="True">
  61. </MenuItem>
  62. <MenuItem Name="BackColorMenuItem" Header="恢复默认颜色" IsEnabled="True">
  63. </MenuItem>
  64. </ContextMenu>
  65. <Style x:Key="listboxItemStyle" TargetType="{x:Type ListBoxItem}">
  66. <Setter Property="ContextMenu" Value="{StaticResource FlyoutMenu}"/>
  67. <Setter Property="HorizontalContentAlignment" Value="Center"/>
  68. <Setter Property="Margin" Value="2,0,2,0"/>
  69. </Style>
  70. </ResourceDictionary>
  71. </UserControl.Resources>
  72. <Grid Background="#F3F3F3">
  73. <StackPanel>
  74. <TextBlock Name="AnnotTypeTitle" FontFamily="SegoeUI" FontWeight="Bold" FontSize="18" LineHeight="24" HorizontalAlignment="Center" Margin="0,8,0,0">Freehand</TextBlock>
  75. <Border Width="228" Height="100" BorderThickness="1" CornerRadius="2" BorderBrush="#DDDDDD" Background="White" Margin="0,8,0,0">
  76. <Grid>
  77. <!--<Path Name="SharpPath" Opacity="{Binding ElementName=OpacitySlider,Path=Value}" StrokeThickness="{Binding ElementName=ThicknessSlider,Path=Value}"
  78. Stroke="{Binding ElementName=BorderColorPicker,Path=SelectedColor,Converter={StaticResource ColorToBrushConvert}}"
  79. Fill="{Binding ElementName=FillColorPicker,Path=SelectedColor,Converter={StaticResource ColorToBrushConvert}}"
  80. Width="36" Height="36" HorizontalAlignment="Center" VerticalAlignment="Center">
  81. </Path>-->
  82. </Grid>
  83. </Border>
  84. <Border Width="162" Height="32" Margin="0,12,0,0" BorderThickness="1" BorderBrush="#FFE2E3E6">
  85. <Grid Name="ToolGrid">
  86. <Grid.ColumnDefinitions>
  87. <ColumnDefinition Width="40.5"></ColumnDefinition>
  88. <ColumnDefinition Width="40.5"></ColumnDefinition>
  89. <ColumnDefinition Width="40.5"></ColumnDefinition>
  90. <ColumnDefinition Width="40.5"></ColumnDefinition>
  91. </Grid.ColumnDefinitions>
  92. <ToggleButton Name="SharpRectBtn" Tag="Rect" Width="40.5" Background="Transparent" BorderThickness="0">
  93. <Rectangle HorizontalAlignment="Center" VerticalAlignment="Center" Width="16" Height="16" Stroke="#273C62"></Rectangle>
  94. </ToggleButton>
  95. <Line Name="line1" HorizontalAlignment="Left" VerticalAlignment="Center" Grid.Column="1" X1="0" Y1="0" X2="0" Y2="16" StrokeThickness="1" Stroke="#33000000">
  96. </Line>
  97. <ToggleButton Name="SharpCircleBtn" Width="40.5" Tag="Circle" Grid.Column="1" Background="Transparent" BorderThickness="0" Margin="0,0,0,0">
  98. <Ellipse Width="16" Height="16" Stroke="#273C62" HorizontalAlignment="Center" VerticalAlignment="Center" ></Ellipse>
  99. </ToggleButton>
  100. <Line Name="line2" HorizontalAlignment="Left" Style="{StaticResource line2Style}" VerticalAlignment="Center" Grid.Column="2" X1="0" Y1="0" X2="0" Y2="16" StrokeThickness="1" Stroke="#33000000"></Line>
  101. <ToggleButton Name="SharpArrowBtn" Width="40.5" Tag="Arrow" Grid.Column="2" Background="Transparent" BorderThickness="0" >
  102. <Path HorizontalAlignment="Center" VerticalAlignment="Center" Fill="#273C62" Width="16" Height="16">
  103. <Path.Data>
  104. M13.4,2.6 L13.4,8 L12.2,8 L12.1997359,4.648 L2.02426407,14.8242641 L1.17573593,13.9757359 L11.3517359,3.799 L8,3.8 L8,2.6 L13.4,2.6 Z
  105. </Path.Data>
  106. </Path>
  107. </ToggleButton>
  108. <Line x:Name="line3" HorizontalAlignment="Left" Style="{StaticResource line3Style}" VerticalAlignment="Center" Grid.Column="3" X1="0" Y1="0" X2="0" Y2="16" StrokeThickness="1" Stroke="#33000000"></Line>
  109. <ToggleButton Name="SharpLineBtn" Width="40.5" Tag="Line" Grid.Column="3" Background="Transparent" BorderThickness="0">
  110. <Polygon Width="16" Height="16" HorizontalAlignment="Center" VerticalAlignment="Center" Fill="#273C62">
  111. <Polygon.Points>
  112. 13.1757359 1.97573593 14.0242641 2.82426407 2.82426407 14.0242641 1.97573593 13.1757359
  113. </Polygon.Points>
  114. </Polygon>
  115. </ToggleButton>
  116. </Grid>
  117. </Border>
  118. <Grid Margin="0,18,0,0">
  119. <Grid.RowDefinitions>
  120. <RowDefinition Height="auto"/>
  121. <RowDefinition/>
  122. </Grid.RowDefinitions>
  123. <local:ThicknessContent x:Name="layerFill" HorizontalAlignment="Right"/>
  124. <Grid Grid.Row="1">
  125. <Grid.ColumnDefinitions>
  126. <ColumnDefinition Width="*"></ColumnDefinition>
  127. <ColumnDefinition Width="auto"></ColumnDefinition>
  128. </Grid.ColumnDefinitions>
  129. <cus:ColorDropBox x:Name="ColorFillDropPicker" Grid.Column="1" BorderThickness="1" HorizontalAlignment="Right"
  130. BorderBrush="#E2E3E6" Width="80" Height="32">
  131. </cus:ColorDropBox>
  132. <ListBox x:Name="ListColorFill" ItemContainerStyle="{StaticResource listboxItemStyle}" ItemTemplate="{StaticResource listboxData}" BorderThickness="0" Background="Transparent">
  133. <ListBox.ItemsPanel>
  134. <ItemsPanelTemplate>
  135. <WrapPanel Orientation="Horizontal"/>
  136. </ItemsPanelTemplate>
  137. </ListBox.ItemsPanel>
  138. </ListBox>
  139. </Grid>
  140. </Grid>
  141. <Grid Margin="0,18,0,0">
  142. <Grid.RowDefinitions>
  143. <RowDefinition Height="auto"/>
  144. <RowDefinition/>
  145. </Grid.RowDefinitions>
  146. <local:ThicknessContent x:Name="layerThick" HorizontalAlignment="Right"/>
  147. <Grid Grid.Row="1">
  148. <Grid.ColumnDefinitions>
  149. <ColumnDefinition Width="*"></ColumnDefinition>
  150. <ColumnDefinition Width="auto"></ColumnDefinition>
  151. </Grid.ColumnDefinitions>
  152. <cus:ColorDropBox x:Name="ColorDropPicker" Grid.Column="1" BorderThickness="1" HorizontalAlignment="Right"
  153. BorderBrush="#E2E3E6" Width="80" Height="32">
  154. </cus:ColorDropBox>
  155. <ListBox x:Name="ListColor" ItemContainerStyle="{StaticResource listboxItemStyle}" ItemTemplate="{StaticResource listboxData}" BorderThickness="0" Background="Transparent">
  156. <ListBox.ItemsPanel>
  157. <ItemsPanelTemplate>
  158. <WrapPanel Orientation="Horizontal"/>
  159. </ItemsPanelTemplate>
  160. </ListBox.ItemsPanel>
  161. </ListBox>
  162. </Grid>
  163. </Grid>
  164. <Grid>
  165. <Grid.ColumnDefinitions>
  166. <ColumnDefinition Width="*"></ColumnDefinition>
  167. <ColumnDefinition Width="auto"></ColumnDefinition>
  168. </Grid.ColumnDefinitions>
  169. <Slider Name="BorderSlider" VerticalAlignment="Center" Margin="12,0,4,0" Minimum="1" Maximum="12" IsSelectionRangeEnabled="True" IsMoveToPointEnabled="True"
  170. Style="{StaticResource RoundThumbSlider}" TickFrequency="1" IsSnapToTickEnabled="True" >
  171. <Slider.Resources>
  172. <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="#477EDE" />
  173. <SolidColorBrush x:Key="{x:Static SystemColors.ControlDarkDarkBrushKey}" Color="#E2E3E6" />
  174. </Slider.Resources>
  175. </Slider>
  176. <Border Grid.Column="1" BorderBrush="#E2E3E6" Width="80" Height="32" Margin="0,0,12,0" BorderThickness="0">
  177. <Grid>
  178. <ComboBox Name="BorderDropBox" BorderThickness="1" Padding="10 10 0 0" Background="Transparent" BorderBrush="#FFE2E3E6" >
  179. <ComboBox.ItemContainerStyle>
  180. <Style TargetType="{x:Type ComboBoxItem}">
  181. <Setter Property="Padding" Value="10 0 0 0"/>
  182. </Style>
  183. </ComboBox.ItemContainerStyle>
  184. <ComboBoxItem Content="1" Height="32" VerticalContentAlignment="Center" Template="{StaticResource comboxitem}"/>
  185. <ComboBoxItem Content="3" Height="32" VerticalContentAlignment="Center" Template="{StaticResource comboxitem}"/>
  186. <ComboBoxItem Content="6" Height="32" VerticalContentAlignment="Center" Template="{StaticResource comboxitem}"/>
  187. <ComboBoxItem Content="9" Height="32" VerticalContentAlignment="Center" Template="{StaticResource comboxitem}"/>
  188. <ComboBoxItem Content="12" Height="32" VerticalContentAlignment="Center" Template="{StaticResource comboxitem}"/>
  189. </ComboBox>
  190. <TextBox FontFamily="Segoe UI" FontSize="14" Background="White" Height="20" Margin="10,0,35,0" IsReadOnly="True"
  191. BorderThickness="0" VerticalAlignment="Center" TextAlignment="Left" Text="{Binding ElementName=BorderSlider,Path=Value}">
  192. </TextBox>
  193. </Grid>
  194. </Border>
  195. </Grid>
  196. <StackPanel Orientation="Horizontal" Margin="0,20,0,0">
  197. <cus:CustomIconToggleBtn x:Name="BtnListMode" Tag="Line" Width="110" Height="32"
  198. Style="{StaticResource ToggleBtnViewModeStyle}">
  199. <Border BorderBrush="Black" BorderThickness="1" Padding="8,0,8,0" Width="108" Height="30">
  200. <Line X1="10" Y1="15" X2="260" Y2="15" Stroke="Black" StrokeThickness="2" />
  201. </Border>
  202. </cus:CustomIconToggleBtn>
  203. <cus:CustomIconToggleBtn x:Name="BtnListMode1" Tag="Line" Width="110" Height="32"
  204. Style="{StaticResource ToggleBtnViewModeStyle}">
  205. <Border BorderBrush="Black" BorderThickness="1" Padding="8,0,8,0" Width="108" Height="30" >
  206. <Line X1="10" Y1="15" X2="260" Y2="15" Stroke="Black" StrokeThickness="2" StrokeDashArray="2"/>
  207. </Border>
  208. </cus:CustomIconToggleBtn>
  209. </StackPanel>
  210. </StackPanel>
  211. </Grid>
  212. </UserControl>