PrinterDialog.xaml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. <Window x:Class="ComPDFKit.Controls.PDFControl.PrinterDialog"
  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:local="clr-namespace:ComPDFKit.Controls.PDFControl"
  7. xmlns:common="clr-namespace:ComPDFKit.Controls.Common"
  8. mc:Ignorable="d"
  9. Title="PrinterDialog" Height="490" Width="835 "
  10. ResizeMode="NoResize"
  11. Loaded="PrinterDialog_Loaded">
  12. <Window.Resources>
  13. <ResourceDictionary>
  14. <Style x:Key="TitleTextBlockStyle" TargetType="{x:Type TextBlock}">
  15. <Setter Property="FontSize" Value="12"></Setter>
  16. <Setter Property="FontWeight" Value="SemiBold"></Setter>
  17. <Setter Property="Margin" Value="0,8,0,8"></Setter>
  18. <Setter Property="FontFamily" Value="Segoe UI"></Setter>
  19. </Style>
  20. <common:SecurityResourceConverter x:Key="SecurityResourceConverter"/>
  21. <common:StringToVisibilityConverter x:Key="StringToVisibilityConverter"></common:StringToVisibilityConverter>
  22. <common:BoolToVisibleConverter x:Key="BoolToVisibleConverter"></common:BoolToVisibleConverter>
  23. <ResourceDictionary.MergedDictionaries>
  24. <ResourceDictionary Source="../Asset/Styles/RadioButtonStyle.xaml"></ResourceDictionary>
  25. <ResourceDictionary Source="../Asset/Styles/ComboBoxStyle.xaml"></ResourceDictionary>
  26. <ResourceDictionary Source="../Asset/Styles/ButtonStyle.xaml"></ResourceDictionary>
  27. </ResourceDictionary.MergedDictionaries>
  28. </ResourceDictionary>
  29. </Window.Resources>
  30. <Grid Margin="0,30,0,0">
  31. <Grid.RowDefinitions>
  32. <RowDefinition></RowDefinition>
  33. <RowDefinition Height="60"></RowDefinition>
  34. </Grid.RowDefinitions>
  35. <Grid.ColumnDefinitions>
  36. <ColumnDefinition Width="260"></ColumnDefinition>
  37. <ColumnDefinition></ColumnDefinition>
  38. <ColumnDefinition Width="300"></ColumnDefinition>
  39. </Grid.ColumnDefinitions>
  40. <local:PrintPreviewControl x:Name="ctlPreview" Margin="10,0,10,0"></local:PrintPreviewControl>
  41. <StackPanel Orientation="Vertical" Grid.Column="1" Margin="16,0,8,0">
  42. <StackPanel Orientation="Vertical">
  43. <StackPanel Grid.Row="0" Orientation="Vertical">
  44. <TextBlock Text="Printer" Style="{StaticResource TitleTextBlockStyle}" Margin="0,0,0,8"></TextBlock>
  45. <StackPanel Orientation="Horizontal">
  46. <ComboBox
  47. Style="{StaticResource ComboBoxStyle1}"
  48. Name="cmbPrinterName"
  49. SelectionChanged="cmbPrinterName_SelectionChanged"
  50. Width="200"
  51. HorizontalAlignment="Left"
  52. Height="24" >
  53. </ComboBox>
  54. </StackPanel>
  55. <StackPanel Orientation="Horizontal" Margin="0,5,0,0">
  56. <CheckBox
  57. x:Name="chkGrayScale"
  58. VerticalAlignment="Center"
  59. Content="Gray Scale"
  60. Click="chkGrayScale_Click"></CheckBox>
  61. </StackPanel>
  62. </StackPanel>
  63. <StackPanel Margin="0,8,0,0" Grid.Row="1" Orientation="Vertical">
  64. <TextBlock Text="Print Settings" Style="{StaticResource TitleTextBlockStyle}"></TextBlock>
  65. <StackPanel Orientation="Horizontal" Margin="0,0,0,8">
  66. <TextBlock Text="Paper"
  67. Width="64"
  68. Height="22"
  69. FontFamily="Segoe UI"
  70. FontSize="14"></TextBlock>
  71. <ComboBox
  72. x:Name="cmbPaper"
  73. SelectionChanged="cmbPaper_SelectionChanged"
  74. Style="{StaticResource ComboBoxStyle1}"
  75. Width="155"
  76. Height="24" ></ComboBox>
  77. </StackPanel>
  78. <StackPanel Orientation="Horizontal" Margin="0,0,0,8">
  79. <TextBlock
  80. Width="64"
  81. Height="22"
  82. FontFamily="Segoe UI"
  83. FontSize="14" Text="Oritation"></TextBlock>
  84. <ComboBox
  85. x:Name="cmbOritation"
  86. Style="{StaticResource ComboBoxStyle1}"
  87. SelectionChanged="cmbOritation_SelectionChanged"
  88. Width="155"
  89. Height="24" >
  90. <ComboBoxItem Content="Portrait" Tag="Portrait" IsSelected="True"></ComboBoxItem>
  91. <ComboBoxItem Content="Landscape" Tag="Landscape"></ComboBoxItem>
  92. <ComboBoxItem Content="Auto" Tag="Auto"></ComboBoxItem>
  93. </ComboBox>
  94. </StackPanel>
  95. </StackPanel>
  96. </StackPanel>
  97. <StackPanel Orientation="Vertical">
  98. <TextBlock Text="Page Range" Style="{StaticResource TitleTextBlockStyle}" Margin="0,8,0,8"></TextBlock>
  99. <RadioButton Margin="-8,0,0,8" Content="All Pages" GroupName="Page Range" x:Name="rdoAllPages" Tag="All" IsChecked="True" Click="rdoPageRange_Click"></RadioButton>
  100. <RadioButton Margin="-8,0,0,8" Content="Only Odd Pages" GroupName="Page Range" x:Name="rdoOddPages" Tag="Odd" Click="rdoPageRange_Click"></RadioButton>
  101. <RadioButton Margin="-8,0,0,8" Content="Only Even Pages" GroupName="Page Range" x:Name="rdoEvenPages" Tag="Even" Click="rdoPageRange_Click"></RadioButton>
  102. <StackPanel Orientation="Horizontal">
  103. <RadioButton Margin="-8,0,8,8" Content="Custom Pages" GroupName="Page Range" x:Name="rdoCustomPages" Tag="Custom" Click="rdoPageRange_Click"></RadioButton>
  104. <TextBox Width="120" Height="24" Text="{Binding PageRangeText, UpdateSourceTrigger=PropertyChanged}"></TextBox>
  105. </StackPanel>
  106. <CheckBox x:Name="chkReversePage" VerticalAlignment="Center" Click="chkReversePage_Click">
  107. <TextBlock Text=" Reverse page"></TextBlock>
  108. </CheckBox>
  109. </StackPanel>
  110. </StackPanel>
  111. <Rectangle Width="1" Fill="#1A000000" Grid.Column="2" HorizontalAlignment="Left"></Rectangle>
  112. <StackPanel Orientation="Vertical" Grid.Column="2" Width="280" Margin="8,0,8,0">
  113. <StackPanel Orientation="Vertical" HorizontalAlignment="Left" Margin="0,0,0,0">
  114. <TextBlock
  115. Style="{StaticResource TitleTextBlockStyle}"
  116. Margin="0,0,0,8"
  117. Width="64"
  118. Text="Content" HorizontalAlignment="Left"></TextBlock>
  119. <ComboBox
  120. x:Name="cmbContent"
  121. Style="{StaticResource ComboBoxStyle1}"
  122. SelectionChanged="cmbContent_SelectionChanged"
  123. HorizontalAlignment="Left"
  124. Width="220"
  125. Height="24">
  126. <ComboBoxItem Content="Document" Tag="Document"></ComboBoxItem>
  127. <ComboBoxItem Content="Document and Markups" Tag="Document and Markups" IsSelected="True"></ComboBoxItem>
  128. <ComboBoxItem Content="Document and Stamps" Tag="Document and Stamps"></ComboBoxItem>
  129. </ComboBox>
  130. </StackPanel>
  131. <StackPanel Orientation="Vertical" Margin="0,8,0,8">
  132. <TextBlock Text="Size" Style="{StaticResource TitleTextBlockStyle}"></TextBlock>
  133. <Grid VerticalAlignment="Top">
  134. <Grid.ColumnDefinitions>
  135. <ColumnDefinition Width="31*"/>
  136. <ColumnDefinition Width="36*"/>
  137. </Grid.ColumnDefinitions>
  138. <Grid.RowDefinitions>
  139. <RowDefinition></RowDefinition>
  140. </Grid.RowDefinitions>
  141. <Grid Grid.ColumnSpan="2">
  142. <Grid.ColumnDefinitions>
  143. <ColumnDefinition Width="49*"/>
  144. <ColumnDefinition Width="188*"/>
  145. </Grid.ColumnDefinitions>
  146. <Grid.RowDefinitions>
  147. <RowDefinition Height="28"></RowDefinition>
  148. <RowDefinition Height="28"></RowDefinition>
  149. <RowDefinition Height="28"></RowDefinition>
  150. </Grid.RowDefinitions>
  151. <RadioButton GroupName="SizeMode" VerticalAlignment="Center" Content="Auto adapt" Grid.ColumnSpan="2" IsChecked="True" Tag="AutoAdapt" Click="SizeMode_Click"/>
  152. <RadioButton GroupName="SizeMode" Grid.Row="1" VerticalAlignment="Center" Content="Actual size" Grid.ColumnSpan="2" Tag="ActualSize" Click="SizeMode_Click"></RadioButton>
  153. <StackPanel Grid.Row="2" Orientation="Horizontal" VerticalAlignment="Center" Grid.ColumnSpan="2">
  154. <RadioButton GroupName="SizeMode" VerticalAlignment="Center" Content="Custom scale" Tag="CustomScale" Click="SizeMode_Click"></RadioButton>
  155. <common:NumericUpDownControl x:Name="nmrcScale" Minimum="1" Maximum="1000" Height="24" Margin="16,0,0,0" Text="{Binding SizeScale, Mode=TwoWay}"></common:NumericUpDownControl>
  156. </StackPanel>
  157. </Grid>
  158. </Grid>
  159. </StackPanel>
  160. <StackPanel Grid.Row="3" VerticalAlignment="Top" >
  161. <CheckBox Name="chkDuplex" Content="Duplex Printing" Margin="0,8,0,8" Click="chkDuplex_Click"></CheckBox>
  162. <RadioButton GroupName="Flip" x:Name="rdoLongEdge" Content="Flip On Long Edge" IsChecked="True" IsEnabled="{Binding IsChecked, ElementName=chkDuplex, Converter={StaticResource BoolToVisibleConverter}}" Margin="0,0,0,8" Click="rdoDuplex_Click" ></RadioButton>
  163. <RadioButton GroupName="Flip" x:Name="rdoShortEdge" Content="Flip On Short Edge" Click="rdoDuplex_Click" IsEnabled="{Binding IsChecked, ElementName=chkDuplex, Converter={StaticResource BoolToVisibleConverter}}"></RadioButton>
  164. </StackPanel>
  165. </StackPanel>
  166. <StackPanel Grid.Column="2" Grid.Row="1" Orientation="Horizontal" HorizontalAlignment="Right">
  167. <Button x:Name="btnConfirm" Height="36" Width="108" Click="btnConfirm_Click"></Button>
  168. <Button x:Name="btnCancel" Height="36" Width="108" Margin="10" Click="btnCancel_Click"></Button>
  169. </StackPanel>
  170. </Grid>
  171. </Window>