网上最常见的导出代码,这个方法的优点是简单.但是缺点就是不能格式化.
如果datagrid中有linkbutton列,导出程序就会报错
类型“DataGridLinkButton”的控件“DataGrid1__ctl2__ctl0”必须放在具有 runat=server 的窗体标记内。纠正这个错误的方法就是对datagrid进行重新绑定,当然在重新绑定之前最好设置参数,这样查询的时候是LinkButton列,导出的时候是普通列或不生成该列.
我实现的方法,修改导出函数如下:
























1
private
void
DataGrid1_ItemDataBound(
object
sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
2 {
3 if (Session[ " print " ] != null )
4 {
5 if (Session[ " print " ].ToString() == " 1 " )
6 {
7 e.Item.Cells[ 0 ].Visible = false ;
8 e.Item.Cells[ 1 ].Visible = false ;
9 e.Item.Cells[ 2 ].Visible = false ;
10 e.Item.Cells[ 12 ].Visible = false ;
11 }
12 }
13 }
2 {
3 if (Session[ " print " ] != null )
4 {
5 if (Session[ " print " ].ToString() == " 1 " )
6 {
7 e.Item.Cells[ 0 ].Visible = false ;
8 e.Item.Cells[ 1 ].Visible = false ;
9 e.Item.Cells[ 2 ].Visible = false ;
10 e.Item.Cells[ 12 ].Visible = false ;
11 }
12 }
13 }