引言
在完成将DataGrid的内容导出到Excel的时候,参考了一个印度小伙的文章http://www.codeproject.com/Articles/120480/Export-to-Excel-Functionality-in-WPF-DataGrid,很清晰,结合着自己的实际项目写了这篇文章,分享给大家。
步骤
一:创建窗体,绘制datagrid
这里不多讲,直接拖控件就行。
二:为datagrid绑定数据
这里查询结果返回的是泛型,
在XAML文件中需要绑定数据:
<DataGrid x:Name="dgtOnlineRecord" Grid.ColumnSpan="4" Grid.Column="1" HorizontalAlignment="Left" Height="432.842" Grid.Row="4" VerticalAlignment="Top" Width="703.722"
ItemsSource="{Binding}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="卡号" Binding="{Binding cardID}"/>
<DataGridTextColumn Header="上机时间" Binding="{Binding onLineDateTime}"/>
<DataGridTextColumn Header="下机时间" Binding="{Binding offLineDateTime}"/>
<DataGridTextColumn Header="消费金额" Binding="{Binding costCash}"/>
<DataGridTextColumn Header="上机机器" Binding="{Binding onLineComputer}"/>
</DataGrid.Columns>
</DataGrid>
后台代码:
JFFacade.CardManagerFacade cardmanagerfacade = new JFFacade.CardManagerFacade();
//实例化外观层的CardManagerFacade类
dgtOnlineRecord.ItemsSource = cardmanagerfacade.QueryStuOnlineRecord(combinedquery);
//使用QueryStuOnlineRecord(查询学生上机记录)方法,并将返回值赋给datagrid的ItemSource
效果如下所示: