首页 新闻 会员 周边 捐助

c# gridview 按某列分组,仅仅导出分组信息(导出所看见的信息)

0
悬赏园豆:50 [待解决问题]

c# gridview 按某列(地区、城市)分组,仅仅导出分组信息?而不导出其余无关(人口、风俗)的信息?不胜感激!!!

补充:gridview中的每一行都有很多列,比如30列,现在我只关心地区、城市,并按照两个列分组,得到的内容仅仅是地区(东北,华南)、城市(广州、东莞),其余的列信息都没有展开。如何导出我关心的信息呢?也就是只导出地区以及对应的城市,简单的说,就是“所见即所得”。
谢谢!

 

jerrychou1983的主页 jerrychou1983 | 初学一级 | 园豆:152
提问于:2013-05-20 11:09
< >
分享
所有回答(4)
0

public partial class _Default : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

        if (!IsPostBack)

        {

                this.bd();

        }

    }

    //初始绑定

    private void bd()

    {

        string sql = "select * from UserSet";

        this.GridView1.DataSource = new s.query.Helper().execquery(sql);

        this.GridView1.DataBind();

    }

 

    protected void Button1_Click(object sender, EventArgs e)

    {

        Response.Clear();

        Response.Buffer = true;

        Response.Charset = "utf-8";

        Response.AppendHeader("Content-Disposition", "attachment;filename=tuican.xls");

        Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");        //设置输出流为简体中文

        Response.ContentType = "application/ms-excel";                              //设置输出文件类型为excel文件。

        this.EnableViewState = false;

        System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo("http://www.lswjsdc.com/users/", true);

        System.IO.StringWriter oStringWriter = new System.IO.StringWriter(myCItrad);

        System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);

        this.GridView1.RenderControl(oHtmlTextWriter);//导出GridView1中的数据(想导出几个就写几个)

        Response.Write(oStringWriter.ToString());

        Response.End();

    }

    public override void VerifyRenderingInServerForm(Control control)

    { }

 

  

}

 不是很明白你的意思,这是导出信息,你参考下吧

c#高手 | 园豆:219 (菜鸟二级) | 2013-05-20 11:16

谢谢您的回复,不过我的应用想在winform里面实现。有什么好的方法吗?

支持(0) 反对(0) jerrychou1983 | 园豆:152 (初学一级) | 2013-05-20 11:20
0
for (int i = 0; i < gv.Columns.Count; i++)
            {
                if (gv.Columns[i].HeaderText == string.Empty || !gv.Columns[i].ShowHeader)
                {
                    gv.Columns.RemoveAt(i);
                }
            }
Set sail | 园豆:540 (小虾三级) | 2013-05-21 09:58
0

遍历DataGridView,提取需要的列,写入一个DataTable或者List<Model>,然后再导出不就行了,还可以在后台重新构造合适的sql语句,查询数据,然后导出。

幻天芒 | 园豆:37205 (高人七级) | 2013-05-23 23:09
0

简单点 直接重新写个获取你想要的信息的方法  再绑定过来  

珍是唯一 | 园豆:4 (初学一级) | 2013-06-01 10:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册