HomePagePictureToPDFDialog.xaml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  1. <UserControl x:Class="PDF_Office.Views.Dialog.HomePageToolsDialogs.HomePagePictureToPDFDialog"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  5. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  6. xmlns:cus="clr-namespace:PDF_Office.CustomControl"
  7. xmlns:prism="http://prismlibrary.com/"
  8. xmlns:homepagetoolsdialogs="clr-namespace:PDF_Office.ViewModels.Dialog.HomePageToolsDialogs"
  9. d:DataContext="{d:DesignInstance Type=homepagetoolsdialogs:HomePagePictureToPDFDialogViewModel}"
  10. prism:ViewModelLocator.AutoWireViewModel="True"
  11. xmlns:convert="clr-namespace:PDF_Office.DataConvert"
  12. d:DesignHeight="554"
  13. d:DesignWidth="892"
  14. mc:Ignorable="d">
  15. <UserControl.Resources>
  16. <ResourceDictionary>
  17. <Style x:Key="HeadStyle" TargetType="{x:Type GridViewColumnHeader}">
  18. <Setter Property="OverridesDefaultStyle" Value="False" />
  19. <Setter Property="TextBlock.HorizontalAlignment" Value="Left"/>
  20. <Setter Property="TextBlock.VerticalAlignment" Value="Center"/>
  21. <Setter Property="Height" Value=" 32"/>
  22. <Setter Property="Width" Value="Auto"/>
  23. <Setter Property="TextBlock.FontFamily" Value="Segoe UI"></Setter>
  24. <Setter Property="Template">
  25. <Setter.Value>
  26. <ControlTemplate TargetType="{x:Type GridViewColumnHeader}">
  27. <Grid Name="g" Background="#FFFFFF">
  28. <Border Name="bd" Padding="{TemplateBinding Padding}">
  29. <ContentPresenter Margin="5,4,1,3" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" />
  30. </Border>
  31. </Grid>
  32. <ControlTemplate.Triggers>
  33. <Trigger Property="IsMouseOver" Value="True">
  34. <Setter TargetName="g" Property="Background">
  35. <Setter.Value>
  36. <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
  37. <GradientStop Offset="0.3" Color="#CED0D4" />
  38. </LinearGradientBrush>
  39. </Setter.Value>
  40. </Setter>
  41. </Trigger>
  42. </ControlTemplate.Triggers>
  43. </ControlTemplate>
  44. </Setter.Value>
  45. </Setter>
  46. </Style>
  47. <!-- ListViewItem的样式 -->
  48. <Style x:Key="listitem1" TargetType="{x:Type ListViewItem}">
  49. <Style.Setters>
  50. <Setter Property="SnapsToDevicePixels" Value="True" />
  51. <Setter Property="Template">
  52. <Setter.Value>
  53. <ControlTemplate TargetType="{x:Type ListViewItem}">
  54. <Border
  55. x:Name="bd"
  56. Padding="{TemplateBinding Padding}"
  57. SnapsToDevicePixels="True">
  58. <GridViewRowPresenter
  59. Margin="3"
  60. Columns="{TemplateBinding GridView.ColumnCollection}"
  61. Content="{TemplateBinding Content}" />
  62. </Border>
  63. <ControlTemplate.Triggers>
  64. <Trigger Property="IsSelected" Value="True">
  65. <Trigger.Setters>
  66. <Setter TargetName="bd" Property="Background">
  67. <Setter.Value>
  68. <LinearGradientBrush StartPoint="0.5,0.22" EndPoint="0.5,1">
  69. <GradientStop Offset="0.31" Color="LightGray" />
  70. <GradientStop Offset="0.88" Color="Gray" />
  71. </LinearGradientBrush>
  72. </Setter.Value>
  73. </Setter>
  74. </Trigger.Setters>
  75. </Trigger>
  76. </ControlTemplate.Triggers>
  77. </ControlTemplate>
  78. </Setter.Value>
  79. </Setter>
  80. </Style.Setters>
  81. </Style>
  82. <convert:UnVisivleConvert x:Key="unVisibleConvert"/>
  83. </ResourceDictionary>
  84. </UserControl.Resources>
  85. <Grid IsEnabled="{Binding PictureToPDFGridIsEnabled}">
  86. <Grid.ColumnDefinitions>
  87. <ColumnDefinition Width="632*"/>
  88. <ColumnDefinition Width="260"/>
  89. </Grid.ColumnDefinitions>
  90. <Grid Grid.Column="0">
  91. <Grid.RowDefinitions>
  92. <RowDefinition Height="*"/>
  93. <RowDefinition Height="72"/>
  94. </Grid.RowDefinitions>
  95. <Grid Grid.Row="0" AllowDrop="True"
  96. Drop="Grid_Drop"
  97. DragEnter="MainPage_DragEnter"
  98. DragOver="MainPage_DragOver"
  99. DragLeave="MainPage_DragLeave"
  100. >
  101. <!--<Label Name="DropGrid" Background="#18A0FB" Opacity="0.5" Panel.ZIndex="1" Visibility="Collapsed"/>-->
  102. <Button Name="BtnBlank" Background="Green" Height="480" Width="632" Visibility="{Binding AddFileVisibility}" Command="{Binding ADDPictureCommand}">
  103. </Button>
  104. <ListView x:Name="listView" DataContext="{Binding ImagesDataTable}" Background="White" ItemsSource="{Binding}" SelectionChanged="listView_SelectionChanged" BorderThickness="1,0,1,1" Visibility="{Binding ElementName=BtnBlank, Path=Visibility, Converter={StaticResource unVisibleConvert}}">
  105. <ListView.ContextMenu>
  106. <ContextMenu StaysOpen="True" >
  107. <MenuItem Header="打开文件" Name="OpenFileMenuItem" Click="OpenFileMenuItem_Click" />
  108. <MenuItem Header="移除" Name="RemoveFileMenuItem" Click="RemoveFileMenuItem_Click"/>
  109. </ContextMenu>
  110. </ListView.ContextMenu >
  111. <ListView.View >
  112. <GridView ColumnHeaderContainerStyle="{StaticResource HeadStyle}">
  113. <GridViewColumn Header="文档名" Width="400" DisplayMemberBinding="{Binding FileName}">
  114. </GridViewColumn>
  115. <GridViewColumn Header="大小" Width="100" DisplayMemberBinding="{Binding FileSize}"/>
  116. <GridViewColumn Header="状态" Width="82" >
  117. <GridViewColumn.CellTemplate>
  118. <DataTemplate>
  119. <StackPanel Orientation="Horizontal">
  120. <cus:BatchStatus StatusValue="{Binding FileState,Mode=TwoWay}" Width="16" Height="16" MaxStatusValue="{Binding MaxPageRange,Mode=TwoWay}"/>
  121. <Button Name="DeleteTemplateBtn" Width="17" Height="17" Margin="39,0,0,0" Click="DeleteTemplateBtn_Click" Style="{StaticResource btn.sec}">
  122. <Grid Width="14" Height="14">
  123. <Path Data ="M7 14C10.866 14 14 10.866 14 7C14 3.13401 10.866 0 7 0C3.13401 0 0 3.13401 0 7C0 10.866 3.13401 14 7 14ZM10.5303 4.53038L8.06069 7L10.5303 9.46962L9.46967 10.5303L7.00002 8.06066L4.53033 10.5303L3.46967 9.46967L5.93936 7L3.46967 4.53033L4.53033 3.46967L7.00002 5.93934L9.46967 3.46971L10.5303 4.53038Z" Fill="#CED0D4" Stretch="Fill"/>
  124. </Grid>
  125. </Button>
  126. </StackPanel>
  127. <DataTemplate.Triggers>
  128. <DataTrigger Binding="{Binding Path=IsMouseOver, RelativeSource={RelativeSource FindAncestor, AncestorType=ListViewItem}}" Value="True">
  129. <Setter TargetName="DeleteTemplateBtn" Property="Visibility" Value="Visible"/>
  130. </DataTrigger>
  131. <DataTrigger Binding="{Binding Path=IsMouseOver, RelativeSource={RelativeSource FindAncestor, AncestorType=ListViewItem}}" Value="False">
  132. <Setter TargetName="DeleteTemplateBtn" Property="Visibility" Value="Hidden"/>
  133. </DataTrigger>
  134. </DataTemplate.Triggers>
  135. </DataTemplate>
  136. </GridViewColumn.CellTemplate>
  137. </GridViewColumn>
  138. </GridView>
  139. </ListView.View>
  140. <ListView.ItemContainerStyle>
  141. <Style TargetType="ListViewItem">
  142. <Setter Property="Height" Value="42"/>
  143. <Style.Triggers>
  144. <Trigger Property="ListView.AlternationIndex" Value="1">
  145. <Setter Property="Background" Value="LightGray"/>
  146. </Trigger>
  147. </Style.Triggers>
  148. </Style>
  149. </ListView.ItemContainerStyle>
  150. </ListView>
  151. </Grid>
  152. <Grid Grid.Row="1">
  153. <Button x:Name="MenuBtn" Width="113"
  154. Height="32"
  155. Margin="25,0,0,0"
  156. HorizontalAlignment="Left" Click="Menu_Click" Style="{StaticResource btn.sec}">
  157. <StackPanel Orientation="Horizontal" >
  158. <Border HorizontalAlignment="Right">
  159. <TextBlock Text="Add Files" FontSize="14" Foreground="Black" Width="57" Height="22" ></TextBlock>
  160. </Border>
  161. <Border Margin="12,0,0,0" Width="12" Height="7">
  162. <Path VerticalAlignment="Center" HorizontalAlignment="Right" Fill="#94989C" Data="M6 4.80726L1.26513 0L0 1.28448L5.36743 6.73398C5.71679 7.08868 6.28321 7.08868 6.63257 6.73398L12 1.28448L10.7349 0L6 4.80726Z" Stretch="Fill" />
  163. </Border>
  164. </StackPanel>
  165. </Button>
  166. <Popup x:Name="menuPop1" StaysOpen="False" AllowsTransparency="True" PlacementTarget="{Binding ElementName=MenuBtn}">
  167. <Grid Height="auto" Width="auto" HorizontalAlignment="Left">
  168. <Border BorderThickness="0" CornerRadius="3" Background="White" Margin="3">
  169. <Border.Effect>
  170. <DropShadowEffect ShadowDepth="0" Color="#FFB6B6B6"/>
  171. </Border.Effect>
  172. <StackPanel Margin="0">
  173. <MenuItem x:Name="添加文件" Header="添加文件" Command="{Binding ADDPictureCommand}"></MenuItem>
  174. <MenuItem x:Name="添加文件夹" Header="添加文件夹" Command="{Binding ADDPictureFilesCommand}"></MenuItem>
  175. </StackPanel>
  176. </Border>
  177. </Grid>
  178. </Popup>
  179. <!--<Button
  180. Width="40"
  181. Height="40"
  182. Margin="0,0,90,0"
  183. HorizontalAlignment="Right">
  184. </Button>-->
  185. <Button
  186. Width="32"
  187. Height="32"
  188. Margin="25,0"
  189. HorizontalAlignment="Right"
  190. IsEnabled="{Binding RemoveIsEnable}"
  191. Command="{Binding RemovePictureFileCommand}" Style="{StaticResource btn.sec}">
  192. <Grid Width="16" Height="16">
  193. <Path Fill="#616469" Data="M6 1.75H10V0.25H6V1.75ZM1 4.25H2.25V15C2.25 15.4142 2.58579 15.75 3 15.75H13C13.4142 15.75 13.75 15.4142 13.75 15V4.25H15V2.75H1V4.25ZM3.75 14.25V4.25H12.25V14.25H3.75ZM7.25 6.5V11.5H8.75V6.5H7.25Z" />
  194. </Grid>
  195. </Button>
  196. </Grid>
  197. </Grid>
  198. <Grid Grid.Column="1" Background="WhiteSmoke" IsEnabled="{Binding SetPictureToPDFGridIsEnabled}">
  199. <Grid.RowDefinitions>
  200. <RowDefinition Height="1*"/>
  201. <RowDefinition Height="64"/>
  202. </Grid.RowDefinitions>
  203. <Grid Grid.Row="0" Margin="16,14,0,0">
  204. <StackPanel>
  205. <TextBlock Text="Setting" Style="{StaticResource PagesView_titleContext}"/>
  206. <TextBlock Text="Export" Height="20" Style="{StaticResource PropertyHeaderLv2}" Margin="0,16,0,0"/>
  207. <StackPanel Margin="0,8,0,0">
  208. <RadioButton Name="NewFilesRadioButtom" Click="RadioButton_Click" IsChecked="True" Padding="9,0,0,0">
  209. <TextBlock Text="新建文档"/>
  210. </RadioButton>
  211. <RadioButton Name="OneNewFileNameRadioButtom" Margin="0,8,0,0" Click="RadioButton_Click" Padding="9,0,0,0">
  212. <TextBlock Text="合并为同一份PDF文档"/>
  213. </RadioButton>
  214. <RadioButton Name="SelectFileNameRadioButton" Margin="0,8,0,0" Click="RadioButton_Click" Padding="9,0,0,0">
  215. <TextBlock Text="插入现有PDF文档"/>
  216. </RadioButton>
  217. </StackPanel>
  218. <StackPanel Orientation="Horizontal" Margin="0,4,0,0">
  219. <TextBox IsEnabled="False" Text="{Binding SelectFileName}" VerticalContentAlignment="Center" Height="32" Width="190"/>
  220. <Button Width="32" Command="{Binding SelectFileCommand}" IsEnabled="{Binding ElementName=SelectFileNameRadioButton,Path=IsChecked}" Style="{StaticResource btn.sec}">
  221. </Button>
  222. </StackPanel>
  223. </StackPanel>
  224. </Grid>
  225. <Grid Grid.Row="1" Margin="15,0,0,0" Visibility="Hidden">
  226. <StackPanel >
  227. <TextBlock Text="OCR"/>
  228. <CheckBox Name="NeedOCRCheckBox" Margin="0,7,0,0">
  229. <TextBlock Text="在需要时识别文本"/>
  230. </CheckBox>
  231. <ComboBox Height="28.55" Width="228" HorizontalAlignment="Left" Margin="0,4,0,0" IsEnabled="{Binding ElementName=NeedOCRCheckBox,Path=IsChecked}"></ComboBox>
  232. <CheckBox Margin="0,16,0,0" IsEnabled="{Binding ElementName=NeedOCRCheckBox,Path=IsChecked}">
  233. <TextBlock Text="识别为TXT"/>
  234. </CheckBox>
  235. </StackPanel>
  236. </Grid>
  237. <Grid Grid.Row="1">
  238. <Button Height="32" Width="228" Command="{Binding ToPDFCommand}" IsEnabled="{Binding ImageToPDFBtnIsEnable}" Style="{StaticResource Btn.cta}">
  239. <TextBlock Text="导出文档" FontSize="18" Foreground="White"/>
  240. </Button>
  241. </Grid>
  242. </Grid>
  243. </Grid>
  244. </UserControl>