4

使用 WinRT 打印文档:

1) 跟踪是否有更多数据或文本数据要打印在格式化页面中。

这可以使用 RichTextBlock 和 RichTextBlockOverflow 来完成,如下所示:

<RichTextBlock Foreground="Black" x:Name="textContent" FontSize="18" Grid.Row="1" Grid.ColumnSpan="2" OverflowContentTarget="{Binding ElementName=firstLinkedContainer}"
IsTextSelectionEnabled="True" TextAlignment="Left" FontFamily="Segoe UI" VerticalAlignment="Top" Horizo​​ntalAlignment="Left">

</RichTextBlok>

<RichTextBlockOverflow x:Name="firstLinkedContainer" OverflowContentTarget="{Binding ElementName=continuationPageLinkedContainer}" Grid.Row="2" Grid.Column="0"/>



但是如何跟踪可能包含几页数据以在格式化页面中打印的 ListBox?

假设这个格式化的 XAML 页面包含 Grid.Row="0" 和 Grid.row="1":

1) Grid.Row ="0" : 客户信息的标题
2) Grid.Row ="1" : 订单交易的正文

ListBox 将添加到具有 Opacity="0"
的 Canvas 对象中。 ListBox 将使用本地数据库中的数据填充。

问题 :

如果 ListBox 有更多数据要打印,需要什么控件来跟踪?

<StackPanel x:Name="header" Grid.Row="0" Grid.ColumnSpan="2" Height="60" Visibility="Collapsed">
       <StackPanel 方向="水平" >
         <RichTextBlock Foreground="Black" FontSize="20" TextAlignment="Left" FontFamily="Segoe UI">
          <段落>顺序-打印测试
          </RichTextBlock>
       </堆栈面板>
 </堆栈面板>

<StackPanel x:Name="Body" Grid.Row="1" Margin="100,30,106,148">

   <ListBox Height="500" x:Name="Lbx1" Margin="30,3,84,0">
      <ListBox.ItemTemplate>
         <数据模板>
             <StackPanel 方向="水平">

                   <TextBlock FontSize="20" Margin="10,10,30,10">
                    <Run Text="name : "/><Run Text="{Binding ItemName}" />
                   </文本块>

                   <TextBlock FontSize="20" Margin="30,10,10,10">
                    <Run Text="code : "/> <Run Text="{Binding ItemCode}" />
                    </文本块>

                    <TextBlock FontSize="20" Margin="10">
                     <Run Text="价格:"/> <Run Text="{绑定价格}" />
                    </文本块>

                   <TextBlock FontSize="20" Margin="10">
                    <Run Text="数量:"/> <Run Text="{绑定数量}" />
                   </文本块>
              </堆栈面板>

            </数据模板>
        </ListBox.ItemTemplate>
     </列表框>            

</堆栈面板>

4

0 回答 0