C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: GridViewをエクセルにダウンロードする


(過去ログ 81 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■48349 / inTopicNo.1)  GridViewをエクセルにダウンロードする
  
□投稿者/ norinekobox (1回)-(2010/04/03(Sat) 11:21:05)

分類:[ASP.NET (VB)] 

ソフト:Visual web Developer 2008
使用言語:Visual Basic

初心者です。
「GridView1」に表示された一覧をエクセルにダウンロードしたいのです。
下記のように記載しましたが、エラーとなってダウンロードができません。
「frm.RenderControl(hw)」の箇所でエラーとなります。

    GridView1.AllowPaging = False
GridView1.AllowSorting = False
GridView1.DataBind()
Dim tw As New StringWriter()
Dim hw As New System.Web.UI.HtmlTextWriter(tw)
Dim frm As HtmlForm = New HtmlForm()
Response.ContentType = "application/ms-excel"
Response.AddHeader("Content-Disposition", "attachment;filename=kensaku.xls")
Response.Charset = ""
Page.EnableViewState = False
Controls.Add(frm)
frm.Controls.Add(GridView1)
frm.RenderControl(hw) ←ここでエラーになります。
Response.Write(tw.ToString())
Response.End()
GridView1.AllowSorting = True
GridView1.DataBind()

どのようにしたらエクセルにダウンロードができるのか、教えてください。
よろしくお願いします。

引用返信 編集キー/
■48356 / inTopicNo.2)  Re[1]: GridViewをエクセルにダウンロードする
□投稿者/ やじゅ (1582回)-(2010/04/03(Sat) 13:16:37)
やじゅ さんの Web サイト
2010/04/03(Sat) 13:26:09 編集(投稿者)
2010/04/03(Sat) 13:23:51 編集(投稿者)

No48349 (norinekobox さん) に返信
> 「frm.RenderControl(hw)」の箇所でエラーとなります。

下記サイトと同じ現象なら、EnableEventValidation = "false"にするといいらしい
You can easily handle this error by going to the page source and turning the EnableEventValidation = "false".
http://www.highoncoding.com/Articles/197_Extensive%20Study%20of%20GridView%20Export%20to%20Excel.aspx

それ以外だと、下記サイト参考にする
gridviewをexcelに出力したい
http://vsug.jp/tabid/63/forumid/47/tpage/1/view/Topic/postid/3056/Default.aspx
Excel でダウンロード
http://blogs.wankuma.com/pinzolo/archive/2006/11/24/46804.aspx
http://blogs.wankuma.com/pinzolo/archive/0001/01/01/60855.aspx
引用返信 編集キー/
■48362 / inTopicNo.3)  Re[2]: GridViewをエクセルにダウンロードする
□投稿者/ norinekobox (2回)-(2010/04/03(Sat) 18:19:51)
やじゅ さん

ありがとうございました。
「EnableEventValidation = "false"」と記載してみたら問題なくダウンロードができました。
よかったです。
いろいろ教えてくださったサイトを閲覧しました。
これからも活用できるサイトだったので参考にさせていただきます。

しかし、びっくりしました。
EXCELにダウンロードしたファイルを開いてみると、「CommandField(選択)」までダウンロードされてました。
GridViewには、オートフォーマットを適用していたので、
そのオートフォーマットもダウンロードされてました。
「CommandField(選択)」は、ダウンロードされない方がいいのですが。。
続けて勉強してみます。

駆け出し者ですが、これからもよろしくお願いします。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -