기본적인 페이지 로드시 웹페이지가 아닌 엑셀시트임을 표시하는 것 만으로도
엑셀페이지 표시가 가능하다. 익스플로러를 이용해서 그런갑다...
private void Page_Load(object sender, System.EventArgs e)
{
Response.ContentType = "application/vnd.ms-excel";
Response.ContentEncoding = System.Text.UTF7Encoding.UTF7;
string strReturn = "";
}
2. DataGrid의 RenderControl를 이용해 엑셀로 저장하는 메서드를 보자..
데이터 그리드 내용만 저장된다.. 신기하죵?
private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
string fileName = DateTime.Now.ToString("yyyyMMddHHmmss")+".xls";
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition","attachment;fileName="+fileName);
Response.Charset = "";
DataGrid1.EnableViewState = false;
System.IO.StringWriter tw = new System.IO.StringWriter();
tw.WriteLine("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=euc-kr\">");//한글 깨짐 방지
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);
DataGrid1.RenderControl(hw);
Response.Write(tw.ToString());
Response.End();
}
3. 응용해서 어떠한 개체의 RenderControl를 이용해 엑셀로 저장 가능하다.
일반 테이블로 만든 것에도 단순히... runat=server와 id를 부여하여 저장 가능하다.
그라몬 서버 컨트롤로 인식 해부니까...
다음의 예는 일반 테이블 테그에 서버컨트롤 지정해서 저장한다. 위에 데이터 그리드랑 별 차이 없다.
private void btnExcel_Click(object sender, System.EventArgs e)
{
string fileName = "aa_"+DateTime.Now.ToString("yyyyMMddHHmmss")+".xls";
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition","attachment;fileName="+fileName);
Response.Charset = "";
System.IO.StringWriter tw = new System.IO.StringWriter();
tw.WriteLine("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=euc-kr\">");//한글 깨짐 방지
// 그래프도 함께 나도오록 하자..
Chart1.HtmlTag = "Jpeg";
Chart1.ImgWidth = 1000;
tw.WriteLine(Chart1.GetHtmlTag(1000,450).Replace("IMG SRC=\"","IMG SRC=\"http://www.aaa.com")+"<br>");//그림을 붙이자.. 쩝쩝..
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);
this.tabResultList.RenderControl(hw);
Response.Write(tw.ToString());
Response.End();
}
출처: http://www.devpia.com/blog/myblog.aspx?pdsidx=2304&ownerid=surfex
'IT-개발,DB' 카테고리의 다른 글
[개발] ASP.NET 닷넷 에디터 게시판 사용하기 (0) | 2010.11.05 |
---|---|
[개발] ASP에서 ActiveX DLL 사용하기 (0) | 2010.11.04 |
[개발] 서브메뉴 만들기 - 자바 스크립트 (0) | 2010.11.04 |
[개발] .PDB 및 .DBG 파일에 대한 설명 (0) | 2010.11.04 |
[개발] Working with GridView without using Data Source Con.. (0) | 2010.11.04 |
댓글