SignatureAnnotProperty.xaml 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. <UserControl x:Class="PDF_Office.Views.PropertyPanel.AnnotPanel.SignatureAnnotProperty"
  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" xmlns:customcontrol="clr-namespace:PDF_Office.CustomControl" xmlns:annotpanel="clr-namespace:PDF_Office.ViewModels.PropertyPanel.AnnotPanel" xmlns:dataconvert="clr-namespace:PDF_Office.DataConvert" d:DataContext="{d:DesignInstance Type=annotpanel:SignatureAnnotPropertyViewModel}"
  7. mc:Ignorable="d" >
  8. <UserControl.Resources>
  9. <PathGeometry x:Key="Ic_AddButtonPath" Figures="M13.5 8C13.5 11.0376 11.0376 13.5 8 13.5C4.96243 13.5 2.5 11.0376 2.5 8C2.5 4.96243 4.96243 2.5 8 2.5C11.0376 2.5 13.5 4.96243 13.5 8ZM15 8C15 11.866 11.866 15 8 15C4.13401 15 1 11.866 1 8C1 4.13401 4.13401 1 8 1C11.866 1 15 4.13401 15 8ZM7.25005 4.80003V7.25003H4.80005V8.75003H7.25005V11.2H8.75005V8.75003H11.2V7.25003H8.75005V4.80003H7.25005Z" FillRule="EvenOdd" />
  10. <dataconvert:ListCountToVisible x:Key="ListCountToVisible"/>
  11. <dataconvert:UnVisivleConvert x:Key="UnVisivleConvert"/>
  12. <SolidColorBrush x:Key="Item.SelectedInactive.Background" Color="#3DDADADA"/>
  13. <SolidColorBrush x:Key="Item.SelectedInactive.Border" Color="#FFDADADA"/>
  14. </UserControl.Resources>
  15. <Grid Background="Transparent">
  16. <Grid.RowDefinitions>
  17. <RowDefinition Height="50"/>
  18. <RowDefinition Height="*"/>
  19. <RowDefinition/>
  20. </Grid.RowDefinitions>
  21. <Grid.ColumnDefinitions>
  22. <ColumnDefinition Width="16"/>
  23. <ColumnDefinition Width="*"/>
  24. <ColumnDefinition Width="16"/>
  25. </Grid.ColumnDefinitions>
  26. <Grid x:Name="Header" Grid.Column="1" >
  27. <Grid.ColumnDefinitions>
  28. <ColumnDefinition Width="16"/>
  29. <ColumnDefinition Width="*"/>
  30. <ColumnDefinition Width="16"/>
  31. </Grid.ColumnDefinitions>
  32. <TextBlock Grid.Column="1" x:Name="TxtTitle" HorizontalAlignment="Left"
  33. VerticalAlignment="Center" FontSize="18" FontWeight="SemiBold" Text="Signature" />
  34. <customcontrol:PathButton Grid.Column="1"
  35. HorizontalAlignment="Right"
  36. HorizontalContentAlignment="Center"
  37. x:Name="BtnAdd"
  38. BorderThickness="1"
  39. CornerRadius="4"
  40. Command="{Binding ShowDialogCommand}"
  41. Height="32" Width="32" IconHeight="16" IconWidth="16"
  42. Icon="{StaticResource Ic_AddButtonPath}" IconFill="#585A63"
  43. IconPress="{StaticResource Ic_AddButtonPath}" IconPressFill="#585A63"
  44. IconMouseOver="{StaticResource Ic_AddButtonPath}" IconMouseOverFill="#585A63"
  45. MouseOverBackground="{StaticResource color.item-state.hov.bg}"
  46. MouseDownBackground="{StaticResource color.item-state.sel.bg.lv3}"
  47. MouseDownBorderBrush="{StaticResource color.item-state.sel.border.lv3}"/>
  48. </Grid>
  49. <Grid Grid.Row="1" Grid.Column="1">
  50. <StackPanel VerticalAlignment="Center" x:Name="NoSignatureStackPanel" Visibility="{Binding SignatureList.Count, Converter={StaticResource ListCountToVisible}}">
  51. <Image Source="pack://application:,,,/PDF Office;component/Resources/PropertyPanel/nosign.png" />
  52. <TextBlock Text="No signature created" FontSize="14" FontFamily="Segoe UI" Height="22" HorizontalAlignment="Center"/>
  53. <TextBlock Width="168" Text="Click the Add button in the upper right corner to create a new signature." FontSize="12" FontFamily="Segoe UI" TextWrapping="Wrap" Foreground="#94989C" HorizontalAlignment="Center"/>
  54. </StackPanel>
  55. <ListBox ItemsSource="{Binding SignatureList}"
  56. SelectedIndex="{Binding CurrentListboxIndex,Mode=TwoWay}"
  57. Visibility="{Binding ElementName=NoSignatureStackPanel,Path=Visibility,Converter={StaticResource UnVisivleConvert}}"
  58. SelectionMode="Single" Height="auto" VerticalAlignment="Top" BorderThickness="0" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
  59. <ListBox.ItemTemplate>
  60. <DataTemplate >
  61. <Grid>
  62. <Grid.ContextMenu>
  63. <ContextMenu>
  64. <MenuItem Header="导出签名">
  65. <MenuItem x:Name="SavePNG" Header="PNG" Tag="PNG" Click="Save_Click"/>
  66. <MenuItem x:Name="SavePDF" Header="PDF" Tag="PDF" Click="Save_Click"/>
  67. </MenuItem>
  68. <MenuItem x:Name="Delete" Header="删除签名" Click="Delete_Click"/>
  69. <MenuItem x:Name="DeleteAll" Header="删除全部签名" Click="DeleteAll_Click"/>
  70. </ContextMenu>
  71. </Grid.ContextMenu>
  72. <Image Source="{Binding SourcePath}" Stretch="Uniform" Height="48"/>
  73. </Grid>
  74. </DataTemplate>
  75. </ListBox.ItemTemplate>
  76. <ListBox.ItemContainerStyle>
  77. <Style TargetType="ListBoxItem">
  78. <Setter Property="Height" Value="65"/>
  79. <Setter Property="Padding" Value="8"/>
  80. <Setter Property="HorizontalContentAlignment" Value="Center"/>
  81. <Setter Property="Template">
  82. <Setter.Value>
  83. <ControlTemplate TargetType="{x:Type ListBoxItem}">
  84. <Border x:Name="Bd" CornerRadius="8" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true">
  85. <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
  86. </Border>
  87. <ControlTemplate.Triggers>
  88. <MultiTrigger>
  89. <MultiTrigger.Conditions>
  90. <Condition Property="IsMouseOver" Value="True"/>
  91. </MultiTrigger.Conditions>
  92. <Setter Property="Background" TargetName="Bd" Value="{StaticResource color.item-state.hov.bg}"/>
  93. <Setter Property="BorderBrush" TargetName="Bd" Value="{StaticResource color.item-state.hov.bg}"/>
  94. </MultiTrigger>
  95. <MultiTrigger>
  96. <MultiTrigger.Conditions>
  97. <Condition Property="Selector.IsSelectionActive" Value="False"/>
  98. <Condition Property="IsSelected" Value="True"/>
  99. </MultiTrigger.Conditions>
  100. <Setter Property="Background" TargetName="Bd" Value="{StaticResource Item.SelectedInactive.Background}"/>
  101. <Setter Property="BorderBrush" TargetName="Bd" Value="{StaticResource Item.SelectedInactive.Border}"/>
  102. </MultiTrigger>
  103. <MultiTrigger>
  104. <MultiTrigger.Conditions>
  105. <Condition Property="Selector.IsSelectionActive" Value="True"/>
  106. <Condition Property="IsSelected" Value="True"/>
  107. </MultiTrigger.Conditions>
  108. <Setter Property="Background" TargetName="Bd" Value="{StaticResource color.item-state.sel.bg.lv3}"/>
  109. <Setter Property="BorderBrush" TargetName="Bd" Value="{StaticResource color.item-state.sel.border.lv3}"/>
  110. </MultiTrigger>
  111. <Trigger Property="IsEnabled" Value="False">
  112. <Setter Property="TextElement.Foreground" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
  113. </Trigger>
  114. </ControlTemplate.Triggers>
  115. </ControlTemplate>
  116. </Setter.Value>
  117. </Setter>
  118. <EventSetter Event="PreviewMouseLeftButtonDown" Handler="ListBoxItem_PreviewMouseLeftButtonDown"/>
  119. </Style>
  120. </ListBox.ItemContainerStyle>
  121. </ListBox>
  122. </Grid>
  123. </Grid>
  124. </UserControl>