Code
1private void ExportGridView()
2 {
3 string attachment = "attachment; filename=signup_by_source_" + DateTime.Now.ToShortDateString() + ".xls";
4
5 Response.ClearContent();
6
7 Response.AddHeader("content-disposition", attachment);
8
9 Response.ContentType = "application/ms-excel";
10
11 System.IO.StringWriter sw = new System.IO.StringWriter();
12
13 HtmlTextWriter htw = new HtmlTextWriter(sw);
14
15
16
17 // Create a form to contain the grid
18
19 HtmlForm frm = new HtmlForm();
20
21 GridView1.Parent.Controls.Add(frm);
22
23 frm.Attributes["runat"] = "server";
24
25 frm.Controls.Add(GridView1);
26
27
28
29 frm.RenderControl(htw);
30
31 //GridView1.RenderControl(htw);
32
33 Response.Write(sw.ToString());
34
35 Response.End();
36
37 }
38 private void PrepareGridViewForExport(Control gv)
39 {
40
41 LinkButton lb = new LinkButton();
42
43 Literal l = new Literal();
44
45 string name = String.Empty;
46
47 for (int i = 0; i < gv.Controls.Count; i++)
48 {
49
50 if (gv.Controls[i].GetType() == typeof(LinkButton))
51 {
52
53 l.Text = (gv.Controls[i] as LinkButton).Text;
54
55 gv.Controls.Remove(gv.Controls[i]);
56
57 gv.Controls.AddAt(i, l);
58
59 }
60
61 else if (gv.Controls[i].GetType() == typeof(DropDownList))
62 {
63
64 l.Text = (gv.Controls[i] as DropDownList).SelectedItem.Text;
65
66 gv.Controls.Remove(gv.Controls[i]);
67
68 gv.Controls.AddAt(i, l);
69
70 }
71
72 else if (gv.Controls[i].GetType() == typeof(CheckBox))
73 {
74
75 l.Text = (gv.Controls[i] as CheckBox).Checked ? "True" : "False";
76
77 gv.Controls.Remove(gv.Controls[i]);
78
79 gv.Controls.AddAt(i, l);
80
81 }
82
83 if (gv.Controls[i].HasControls())
84 {
85
86 PrepareGridViewForExport(gv.Controls[i]);
87
88 }
89 }
1private void ExportGridView()
2 {
3 string attachment = "attachment; filename=signup_by_source_" + DateTime.Now.ToShortDateString() + ".xls";
4
5 Response.ClearContent();
6
7 Response.AddHeader("content-disposition", attachment);
8
9 Response.ContentType = "application/ms-excel";
10
11 System.IO.StringWriter sw = new System.IO.StringWriter();
12
13 HtmlTextWriter htw = new HtmlTextWriter(sw);
14
15
16
17 // Create a form to contain the grid
18
19 HtmlForm frm = new HtmlForm();
20
21 GridView1.Parent.Controls.Add(frm);
22
23 frm.Attributes["runat"] = "server";
24
25 frm.Controls.Add(GridView1);
26
27
28
29 frm.RenderControl(htw);
30
31 //GridView1.RenderControl(htw);
32
33 Response.Write(sw.ToString());
34
35 Response.End();
36
37 }
38 private void PrepareGridViewForExport(Control gv)
39 {
40
41 LinkButton lb = new LinkButton();
42
43 Literal l = new Literal();
44
45 string name = String.Empty;
46
47 for (int i = 0; i < gv.Controls.Count; i++)
48 {
49
50 if (gv.Controls[i].GetType() == typeof(LinkButton))
51 {
52
53 l.Text = (gv.Controls[i] as LinkButton).Text;
54
55 gv.Controls.Remove(gv.Controls[i]);
56
57 gv.Controls.AddAt(i, l);
58
59 }
60
61 else if (gv.Controls[i].GetType() == typeof(DropDownList))
62 {
63
64 l.Text = (gv.Controls[i] as DropDownList).SelectedItem.Text;
65
66 gv.Controls.Remove(gv.Controls[i]);
67
68 gv.Controls.AddAt(i, l);
69
70 }
71
72 else if (gv.Controls[i].GetType() == typeof(CheckBox))
73 {
74
75 l.Text = (gv.Controls[i] as CheckBox).Checked ? "True" : "False";
76
77 gv.Controls.Remove(gv.Controls[i]);
78
79 gv.Controls.AddAt(i, l);
80
81 }
82
83 if (gv.Controls[i].HasControls())
84 {
85
86 PrepareGridViewForExport(gv.Controls[i]);
87
88 }
89 }