GridView查询再导出没问题
可是有一行太长了 影响美观 我想把它隐藏可是隐藏后导出来的数据隐藏的那列是没有的
想过在后台导出的事件中再把那列属性改成显示 这样应该就可以了吧 可怎么写了
问度娘也没解决 问csdn大哥了 这问题一定有人解决过的吧 谢谢。

解决方案 »

  1.   

    可是那列太长了 影响美观 所以我想把它隐藏掉。程序看不见可以只要在excel中看见就好了 我吧那列隐藏了导出的时候隐藏列的数据也没了 导出的时候怎么设置那列为显示的呢 导完再隐藏掉
      

  2.   

    代码:
      protected void Export_Click(object sender, EventArgs e)
            {
                NewMethod();
                
            }        private void NewMethod()//导出数据放到excel
            {            string srcPath = "D:/FileName.xls";
                FileInfo fileInfo = new FileInfo(srcPath);
                Response.Clear();
                Response.AddHeader("content-disposition", "attachment;filename=" + fileInfo.Name);
                Response.WriteFile(srcPath);
                Response.Clear();
                Response.Charset = "gb2312";
                Response.ContentType = "application/vnd.xls";
                System.IO.StringWriter stringWrite = new System.IO.StringWriter();
                System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
                gvUsbUseUser.AllowPaging = false;//分页false
                string indexValue = this.rblUsbUseType.SelectedValue;
                if (indexValue.Equals("1"))//如果单选按钮value是1 导出1类型的资料
                {
                    gvUsbUseUser.DataSource = usbme.getNotCn();
                }
                else if (indexValue == "2"&& TbKeywords.Text.Length >0)//如果单选按钮value是2 导出2类型的资料
                {
                    gvUsbUseUser.DataSource = usbme.getKeyWords(this.TbKeywords.Text);
               }
               gvUsbUseUser.DataBind(); //查询数据的方法
               gvUsbUseUser.RenderControl(htmlWrite);//gvUsbUseUser控件名 USB使用用户
                Response.Write(stringWrite.ToString());
                Response.End();
                gvUsbUseUser.AllowPaging = true;//分页true
                getDate();
            }        //确认在运行时以ASP.NET服务器控件呈现htmlFrom控件 这句不加报错 不知道为什么 重写?
            public override void VerifyRenderingInServerForm(Control control)
            {
                // base.VerifyRenderingInServerForm(control);
            }
      

  3.   

    用css控制一下格式太长的截取就好了
      

  4.   

    截取? 你是说换行吗还是截断掉
    换行可以不过行变粗了
    截取 css截取我百度下看看
    不过最好查询时候不显示 Visible=false 后台导出Visible=false这列导出不了
    gridview在后台怎么指定某列的Visible=true
      

  5.   

    用CSS控制,试试这个属性overflow: hidden;
      

  6.   

    方法开头把列显示GridView1.Columns[1].Visible = true;
    方法最后在改为false就可以了吧
      

  7.   

    以前就是这样GridView1.Columns[要隐藏的索引].Visible = true;
    不管用 有测试过吗