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();
            }

    生成的报表是这个样子:

  • 相关阅读:
    nuxt引入fontawesome
    springboot+springsecurity+vue实现简单的登陆认证
    vue给v-html渲染出的页面添加样式
    vue整合SimpleMDE做编辑器
    vue整合tinymce做富文本编辑器
    vue引入svg图标
    vue刷新整个页面
    解决Vue2.9.6无法卸载的问题
    使用npm命令下载sass时出现Error: not found: python2
    html中好玩的技巧,你知道几个
  • 原文地址:https://www.cnblogs.com/slmk/p/2524712.html
Copyright © 2011-2022 走看看