【问题标题】:silverlight printing using davidpoll.com collection printer使用 davidpoll.com 集合打印机进行 silverlight 打印
【发布时间】:2011-10-31 16:05:27
【问题描述】:

我正在使用 Silverlight 4 应用程序。我有一个要打印的数据网格。我正在尝试使用davidpoll 打印功能

目前,我只打印数据网格标题,但没有打印任何项目

 <SLaB:CollectionPrinter x:Name="printer" ItemsSource="{Binding CurrentSearchView}" >
        <SLaB:CollectionPrinter.BodyTemplate>
            <DataTemplate>
                <sdk:DataGrid x:Name="dgResults" VerticalAlignment="Stretch" SelectionMode="Single" HorizontalAlignment="Stretch" AutoGenerateColumns="False" ItemsSource="{Binding CurrentSearchView}" IsReadOnly="True" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Disabled" Margin="10" FontSize="12" FontFamily="Segoe UI" >
                    <sdk:DataGrid.Columns>
                        <sdk:DataGridTextColumn Binding="{Binding PeopleId}" Header="People ID" Width="150"/>
                        <sdk:DataGridTextColumn Binding="{Binding Name}" Header="Name" Width="*" MinWidth="80"/>
                        <sdk:DataGridTemplateColumn Header="FQ" Width="80">
                            <sdk:DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <StackPanel x:Name="spFq" Background="{Binding FqBackground}" Margin="2">
                                        <Image Source="{Binding FqImagePath}" Margin="4" Height="24" Width="24"/>
                                    </StackPanel>
                                </DataTemplate>
                            </sdk:DataGridTemplateColumn.CellTemplate>
                        </sdk:DataGridTemplateColumn>
                        <sdk:DataGridTemplateColumn Header="LQ" Width="80" CellStyle="{StaticResource BrowseQualityCellStyle}">
                            <sdk:DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <StackPanel x:Name="spLq" Orientation="Horizontal" Background="{Binding LqBackground}" Margin="2" >
                                        <myControls:PlayButtonControl x:Name="playControl" Margin="4" Height="24" Width="24" />
                                        <Image Source="{Binding LqImagePath}"  Margin="4" Height="16" Width="16"/>
                                    </StackPanel>
                                </DataTemplate>
                            </sdk:DataGridTemplateColumn.CellTemplate>
                        </sdk:DataGridTemplateColumn>
                        <sdk:DataGridTextColumn Binding="{Binding Format}" Header="Format" Width="Auto"/>
                        <sdk:DataGridTextColumn Binding="{Binding Duration}" Header="Duration" Width="Auto"/>
                        <sdk:DataGridTextColumn Binding="{Binding Attachment}" Header="Attachment" Width="Auto"/>
                        <sdk:DataGridTextColumn Binding="{Binding Restore}" Header="Restore" Width="Auto"/>
                    </sdk:DataGrid.Columns>
                </sdk:DataGrid>
            </DataTemplate>
        </SLaB:CollectionPrinter.BodyTemplate>
    </SLaB:CollectionPrinter>

这里是按钮命令

 <Button Command="{Binding PrintCommand, ElementName=printer}">Print</Button>

请注意,collectionprinter 和 datagrid 都引用同一个属性 CurrentSearchView,即 PagedCollectionView。我认为我的问题出在那儿,也许我无法使用这种集合(我也尝试使用可观察集合并发现相同的结果),或者我的绑定错误(两个控件都引用相同的属性,不t 似乎是正确的)

任何帮助将不胜感激。

谢谢

【问题讨论】:

  • 我发现了问题。我需要将数据网格的绑定设置为 "CurrentItems"

标签: silverlight printing


【解决方案1】:

我发现了问题。我需要将数据网格的绑定设置为“CurrentItems”

 <sdk:DataGrid x:Name="dgResults" VerticalAlignment="Stretch" SelectionMode="Single" HorizontalAlignment="Stretch" AutoGenerateColumns="False" ItemsSource="{Binding CurrentItems}" IsReadOnly="True" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Disabled" Margin="10" FontSize="12" FontFamily="Segoe UI" >

【讨论】:

    猜你喜欢
    • 2016-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-02
    • 2019-09-22
    • 2016-02-17
    • 1970-01-01
    • 2011-10-22
    相关资源
    最近更新 更多