繁体   English   中英

WPF DataGrid打印机

[英]WPF DataGrid Printer

我有一个很长很宽的数据网格,我想发送到打印机。 但是,当我要所有行和列时如何打印它。 它可能会填满多个页面-没关系。

我正在使用WPF,C#和.Net 4.0

这是我的数据网格

<DataGrid Grid.Column="1"
              AutoGenerateColumns="False"
              ItemsSource="{Binding Tasks}"
              Name="dataGrid"
              LoadingRow="dataGrid_LoadingRow" 
              MouseMove="dataGrid_MouseMove">
        <DataGrid.Columns>
            <DataGridTemplateColumn Header="Task ID" CellTemplate="{StaticResource hyperlinkTemplate}"></DataGridTemplateColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=TaskName}" Header="Task name" />
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=TaskResponsible}" Header="Task responsible" />
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=TaskResponsibleDepartment}" Header="Task responsible department"></DataGridTextColumn>
            <DataGridTextColumn Binding="{Binding Path=Category, ValidatesOnExceptions=True}" Header="Category" EditingElementStyle="{StaticResource CellEditStyle}"/>
            <DataGridTextColumn Binding="{Binding Path=Status, ValidatesOnExceptions=True}" Header="Status" EditingElementStyle="{StaticResource CellEditStyle}"></DataGridTextColumn>
            <DataGridTextColumn Binding="{Binding Path=Priority, ValidatesOnExceptions=True}" Header="Priority" EditingElementStyle="{StaticResource CellEditStyle}" />
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=StartDate, StringFormat={}{0:yyyy MMMM dd}}" Header="Start date"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=ActualHours.TotalHours, StringFormat={}{0:0}}" Header="Actual hours" />
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=EstimatedHours.TotalHours, StringFormat={}{0:0}}" Header="Estimated hours" />
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=EstimatedDeploymentDate, StringFormat={}{0:yyyy MMMM dd}}" Header="Estimated deployment date" />
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=DesiredImplementationDate, StringFormat={}{0:yyyy MMMM dd}}" Header="Desired deployment date" />
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=APP.StartDate, StringFormat={}{0:yyyy MMMM dd}}" Header="APP - Start Date"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=APP.EstimatedHours}" Header="APP - Estimated hours"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=APP.ActualHours}" Header="APP - Actual hours"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=IN.StartDate, StringFormat={}{0:yyyy MMMM dd}}" Header="IN - Start Date"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=IN.EstimatedHours}" Header="IN - Estimated hours"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=IN.ActualHours}" Header="IN - Actual hours"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=SIS.StartDate, StringFormat={}{0:yyyy MMMM dd}}" Header="SIS - Start Date"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=SIS.EstimatedHours}" Header="SIS - Estimated hours"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=SIS.ActualHours}" Header="SIS - Actual hours"></DataGridTextColumn>
            <DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=Tags}" Header="Tags"></DataGridTextColumn>
        </DataGrid.Columns>
    </DataGrid>

我只是在为@icebat回答这个问题。 这可以使用流程文档工具来完成。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM