gridview导入到excel最简单的方法

 public override void VerifyRenderingInServerForm(Control control) { }//必须重写的一个方法,不然不能导出

 

    protected void Out_Click(object sender, EventArgs e)//导出按钮

    {

        Gridview1.Width = Unit.Empty;

        

        //先把修改信息列和删除信息列隐藏不让他输出

        Gridview1.Columns[Gridview1.Columns.Count - 1].Visible = false;

        Gridview1.Columns[Gridview1.Columns.Count - 2].Visible = false;

 

        //再把分页功能设置为false,之后再重新绑定

        Gridview1.AllowPaging = false;

        Query_Click(sender, null);

 

 

        System.Web.HttpContext curContext = System.Web.HttpContext.Current;

 

        curContext.Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");//改成utf-8就会出现乱码

        curContext.Response.ContentType = "application/excel";

        curContext.Response.Charset = "utf-8";

        curContext.Response.ClearContent();

        curContext.Response.AddHeader("content-disposition", "attachment; filename=gradeinfo.xls");

 

        StringWriter sw = new StringWriter();

 

        System.Web.UI.HtmlTextWriter htw = new System.Web.UI.HtmlTextWriter(sw);

 

        Gridview1.RenderControl(htw);

        Gridview1.Dispose();

 

 

 

        curContext.Response.Write(sw.ToString());

 

        curContext.Response.End();

    }

 

 

但是今天突然发现一个问题,用这个方法保存的excel在本地打开的时候windows install要提示安装vs2008(我机子上有vs2008ide),最后搞了半天还是没有解决办法。毕业设计演示系统的时候弹出这个bug多尴尬,现在又不可能重新用vba编程来实现导入excel了,太麻烦了。只好把机子上的windows install服务禁用了,将就蒙混过去了...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值