zoukankan      html  css  js  c++  java
  • Silverlight打印解决方案2.0之如何自定义表体

    通常我们的表体都是二维表格形式的,正如 Silverlight打印解决方案2.0 Demo 中演示的那样绑定就好了。那如果我要自定义表体怎么办呢?

    大体代码是这样的:

    1、Xaml:

     <local:Report x:Name="Report3" Title="自定义表体">
                        <local:Report.PageHeaderTemplate>
                            <DataTemplate>
                                <TextBlock Text="{Binding Title}" FontSize="16" FontWeight="Bold" HorizontalAlignment="Center"/>
                            </DataTemplate>
                        </local:Report.PageHeaderTemplate>

                        <local:Report.ItemTemplate>
                            <DataTemplate>
                                <Grid Height="120" Margin="10">
                                    <Rectangle Stroke="Gray" StrokeThickness="1"/>
                                    <StackPanel>
                                        <TextBlock Text="{Binding Customer.Name}" Margin="4"/>
                                        <TextBlock Text="{Binding Product.Name}" Margin="4"/>
                                    </StackPanel>
                                </Grid>
                            </DataTemplate>
                        </local:Report.ItemTemplate>

                        <local:Report.PageFooterTemplate>
                            <DataTemplate>
                                <Grid>

                                    <StackPanel Orientation="Horizontal"
                                        HorizontalAlignment
    ="Right"
                                        VerticalAlignment
    ="Center"
                                        Margin
    ="5">
                                        <TextBlock Text="{Binding CurrentPageNumber}" />
                                        <TextBlock Text="{Binding TotalPageCount, StringFormat='/{0}'}" />

                                    </StackPanel>
                                </Grid>
                            </DataTemplate>
                        </local:Report.PageFooterTemplate>
                    </local:Report>

    2、cs: 

    private void Button4_Click(object sender, RoutedEventArgs e)
            {
                var tag = new TagData();
                tag.Total = data.Sum(r => r.Sum);
                tag.Count = data.Count;

                Report3.DefaultPageSize = PageSizes.B5;
                Report3.ItemsSource = data;
                Report3.TagData = tag;
                Report3.Preview();
            }

    生成的报表是这个样子:

  • 相关阅读:
    sqlserver日期推算
    bcp sqlserver 导入 导出 数据
    sqlserver 2008 序列号
    mysql 学习总结
    使用Eclipse对JUnit测试函数进行Debug时断点无效问题
    ORACLE死锁故障排查的一般性手法的备忘录
    BigDecimal进行Format时产生的[java.lang.IllegalArgumentException: Digits < 0]异常
    Java中keySet()返回值的排序问题
    严蔚敏数据结构视频教程下载
    C、C++经典书籍
  • 原文地址:https://www.cnblogs.com/slmk/p/2524712.html
Copyright © 2011-2022 走看看