2012-02-16 156 views
5

如何在每个打印页面上打印页面标题和GridView的标题?如何在每个打印页面上打印GridView的标题

我想在每个页面上添加页标题和GridView标题。

我使用分页符将GridView分成多个页面,但只有第一页带有标题,其他都没有标题页和标题页。

对于动态GridView,我的代码使用AutoGenerateColumns="true"

回答

4

把下面的头部

<style media="print"> 

       .MyCssClass thead 
       { 
        display: table-header-group; 
       } 

</style> 

现在把你的GridView在一个div并给DIV类名MyCssClass

现在添加GridView1_RowDataBound事件,在该事件中调用下面的函数传递Gridview对象。

private void MakeGridViewPrinterFriendly(GridView gridView) 
     { 
      if (gridView.Rows.Count > 0) 
      { 
       gridView.UseAccessibleHeader = true; 
       gridView.HeaderRow.TableSection = TableRowSection.TableHeader; 
       //gridView.HeaderRow.Style["display"] = "table-header-group"; 
      } 
     } 

这适用于IE和FF。未在Chrome中进行测试。

+0

对于简单的工作答案+1。我可以确认它在IE中可用,并且在Chrome中不起作用。 – Corin 2012-03-24 17:48:11