[英]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.