사용자 지정 인쇄 템플릿으로 여러 페이지를 인쇄 할 때 도움이 필요합니다. 인쇄 템플릿 (Silverlight 사용자 정의 컨트롤)은 두 개의 텍스트 블록 (각 텍스트를 표시하고 나중에 인쇄하는 제목 및 내용)으로 구성됩니다. 내가 겪고있는 문제는 오직 1 페이지를 인쇄 할 수 있다는 것입니다. 어떻게 여러 페이지를 인쇄 할 수 있습니까? 이것은 작업 흐름입니다 -Silverlight 4에서 사용자 정의 인쇄 템플릿 (사용자 정의 컨트롤)을 사용하여 여러 페이지 인쇄
- 내용 (매우 커질 수 있음)은 먼저 하위 창 (일종의 사용자 지정 메시지 상자)에 포함 된 텍스트 블록에 표시됩니다.
- 이 내용을 인쇄해야하므로 제목과 내용을 개별적으로 인쇄하는 사용자 지정 인쇄 템플릿을 만들었습니다.
- 이제 어떻게하면 여러 페이지를 인쇄 할 수 있는지 잘 모르겠습니다.
<StackPanel VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Margin="10,10,10,10" > <Border HorizontalAlignment="Stretch" VerticalAlignment="Stretch" CornerRadius="10" BorderThickness="5" Background="White" Height="50" > <TextBlock HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="2" TextWrapping="Wrap" Name="TitleTextBlock" FontSize="16" TextAlignment="Center" FontFamily="Times New Roman" FontStyle="Italic" FontWeight="SemiBold" > </TextBlock> </Border> <Border HorizontalAlignment="Stretch" VerticalAlignment="Stretch" CornerRadius="10" Margin="0,10,0,0" BorderThickness="5" Background="White" Height="950" > <TextBlock HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="10" TextWrapping="Wrap" Name="ContentTextBlock" FontSize="14" FontFamily="Times New Roman" FontWeight="Normal" > </TextBlock> </Border> </StackPanel>
내 코드 - -
Private Sub btnPrint_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) printDoc.Print("MyTest") End Sub Private Sub printDoc_PrintPage(ByVal sender As Object, ByVal e As PrintPageEventArgs) Dim printPage As New PrintingPageTemplate 'printPage.PageTitle = Me.Title.ToString 'printPage.PageContent = Me.txtMessage.Text printPage.TitleTextBlock.Text = Me.Title.ToString printPage.ContentTextBlock.Text = Me.txtMessage.Text 'The txtMessage is a text block which consists of data to be printed and it can have very large content e.PageVisual = printPage 'e.HasMorePages = True ' This doesn't work End Sub
TitleTextBlock의 전체 크기를 확인하고 PrintingTemplate의 새 인스턴스를 만들 몇 가지 논리를 필요
여기 내 XAML입니다. 누군가가 이것을 얻을 수있는 방법에 대한 몇 가지 지침을 던질 수 있습니까? (나는 내 문제에 대한 충분한 정보를 제공 할 수 있었으면 좋겠다.)