ASP.NET 기초 강의실

시삽: 레드플러스 님 
게시판 이동:
 제목 : DataGrid의 Data 내용을 Excel로 Down받기..
글번호: 154
작성자: 최성춘
작성일: 2007/03/14 오후 12:09:00
조회수: 7456
1 ------.aspx----- 2 <asp:DataGrid id="ItemsGrid" 3 BorderColor="black" 4 BorderWidth="1" 5 CellPadding="3" 6 AutoGenerateColumns="true" 7 runat="server"> 8 9 asp:DataGrid> 10 11 <asp:Button ID="btnExcel" runat="server" Text="Excel" OnClick="btnExcelClick" />

1 ------.cs-------------------- 2 3 protected void Page_Load(object sender, EventArgs e) 4 { 5 if (!Page.IsPostBack) 6 { 7 this.ItemsGrid.DataSource = this.setCreateData(); 8 this.ItemsGrid.DataBind(); 9 } 10 } 11 12 ICollection setCreateData() 13 { 14 DataTable dt = new DataTable(); 15 16 dt.Columns.Add(new DataColumn("ID", typeof(Int32))); 17 dt.Columns.Add(new DataColumn("File", typeof(String))); 18 dt.Columns.Add(new DataColumn("From", typeof(String))); 19 dt.Columns.Add(new DataColumn("Subject", typeof(String))); 20 dt.Columns.Add(new DataColumn("RegDate", typeof(String))); 21 dt.Columns.Add(new DataColumn("MailSize", typeof(String))); 22 23 DataRow dr; 24 for (int i = 0; i < 10; i++) 25 { 26 dr = dt.NewRow(); 27 dr[0] = i; 28 dr[1] = "fileattach - " + i.ToString(); 29 dr[2] = "from - " + i.ToString(); 30 dr[3] = "subject - " + i.ToString(); 31 dr[4] = "RegDate - " + i.ToString(); 32 dr[5] = "MailSize - " + i.ToString(); 33 dt.Rows.Add(dr); 34 } 35 36 DataView dv = new DataView(dt); 37 return dv; 38 } 39 protected void btnExcelClick(object o, EventArgs e) 40 { 41 StringBuilder sb = new StringBuilder(500); 42 sb.Append("아이디, 파일, 기간(From), 제목, 날짜, 사이즈"); 43 44 foreach (DataGridItem item in ItemsGrid.Items) 45 { 46 sb.Append(Environment.NewLine); 47 48 for (int i = 0; i < item.Controls.Count; i++) 49 { 50 sb.Append(((TableCell)item.Controls[i]).Text.Replace(
",", string.Empty)).Append(","); 51 } 52 } 53 54 DateTime dt = DateTime.Now; 55 string sFileName = "FileName" + "_" + dt.Ticks.ToString() + ".csv"; 56 57 Response.ContentType = "application/vnd.ms-excel"; 58 Response.AddHeader(
"Content-Disposition", "attachment;fileName=" + sFileName); 59 Response.Charset = "euc-kr"; 60 61 Response.Clear(); 62 Response.Write(sb.ToString()); 63 Response.End(); 64 } 65 ----- 66 --출처는 퍼왔습니다..
 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트


관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 15. ASP.NET 추적(Tracing), 상태 관리(State Management... - 레드플러스 2003-11-15 6298
  14. 데이터 출력 컨트롤 : 리피터, 데이터리스트, 데이터그리드 - 레드플러스 2003-11-15 8370
  데이터그리드 컨트롤을 사용해서 출력(모양 및 기본 페이징) - 레드플러스 2004-05-28 6466
  데이타 리스트 이미지 사용시 이미지 존재여부 확인후 처리 - 최성춘 2009-06-03 5954
  기본 및 고급(사용자 정의) 페이징 연습용 쿼리문 페이징연습.sql(951 Byte(s)) 레드플러스 2004-05-28 6425
  기본페이징테스트.aspx 기본페이징테스트.aspx(806 Byte(s)) 레드플러스 2004-05-28 7089
  기본페이징테스트.aspx.cs 기본페이징테스트.aspx.cs(2 KB) 레드플러스 2004-05-28 6013
  그리드 컨트롤의 ItemDataBound 이벤트 핸들러 : 최근글 표시 및 마우스 오... - 레드플러스 2005-04-20 7160
  그리드 컨트롤의 ItemDataBound 이벤트 핸들러 : 해당row 클릭시 선택값... - 최성춘 2009-06-08 7596
  그리드뷰(GridView) 컨트롤 : MSDN 온라인 예제 링크 - 레드플러스 2006-03-15 7016
  그리드뷰(GridView) Footer 영역 사용(푸터영역에 소계 출력 및 셀 합치기... - 레드플러스 2014-03-17 5268
  참고 URL : GridView 및 DataGrid 웹 서버 컨트롤 비교 - 레드플러스 2007-02-22 5937
현재글 DataGrid의 Data 내용을 Excel로 Down받기.. - 최성춘 2007-03-14 7456
  엑셀 파일의 내용을 읽어 오기 - 최성춘 2007-04-16 6276
  XML 을 이용한 엑셀다운로드 - 최성춘 2007-04-16 7002
  GridView(그리드뷰) 컨트롤의 기본 페이징(Paging) 관련 코드 샘플 - 레드플러스 2008-06-30 9723
  활용예제 : 그리드뷰 멀티헤더 : GridView's Multi Header(Row ... GridViewMultiHeader.png(5 KB) 레드플러스 2009-01-22 10164
  asp.net dataset to excel download - 레드플러스 2014-03-16 4998
  [팁] ASP.NET GridView Currency 표현, 세자리마다 콤마 찍기 - 레드플러스 2014-03-26 5301
  Com+ 사용시..트랙 잭션 에러관련 - 최성춘 2007-06-05 6736
  고급페이징테스트.aspx 고급페이징테스트.aspx(823 Byte(s)) 레드플러스 2004-05-28 6417
  고급페이징테스트.aspx.cs 고급페이징테스트.aspx.cs(2 KB) 레드플러스 2004-05-28 5992
다음글 13. ADO.NET - 레드플러스 2003-11-15 7571
 
손님 사용자 Anonymous (손님)
로그인 Home