- - PR -
GridView の 内容をGridView 外の ボタンイベントで取得する方法
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2009-04-02 16:53
ASP.NET + VB.NET + SQLSERVER で開発しております。
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' GridView を配置しているページにおいて、 GridView外 に 配置した ボタンを押下したイベントにおいて、 ソートした後の GridViewの内容を取得したいのですが、できません。 このソートした情報を元に、印刷画面に送って、印刷画面で、またGridViewを展開しようと考えております。 GridView内のコントロールでは、RowCommandイベントなどで、イベントを起こして、GridViewの内容を取得する事ができるのですが、ソース例を挙げます。 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 'グリッドビューの内容を取得できない Protected Sub Link_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LinkButton.Click 'グリッドビューの内容を取得したい Session("SelectedGridView") = CType(GridView1.DataSource, '分からないです。 DataSet,DataSourceControlではnothingになりました) ' グリッドビューの中身は取得できない(データソースを取得するべき?) Response.Redirect("~/Link.aspx") End Sub ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 'グリッドビューの内容を取得できる Protected Sub GridView_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) 'グリッドビューの内容を取得したい Session("SelectedGridView") = GridView1 'グリッドビューの内容をまるごと取得できる Response.Redirect("~/Link.aspx") End Sub ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ここで、GridViewの内容を取得できれば、遷移した画面で、 Link.aspxにて Protected Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender '前画面で ソートしたグリッドの内容を 取得 GridView1.DataSouce = Session("GridViewDataSouce") GridView1.DataBind() 'もしくは GridView1 = Session("SelectedGridView") End Sub 'を行いたい。 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 何か、取得方法はありますでしょうか。 ご教授いただけますと幸いです。 |
|
投稿日時: 2009-04-03 00:52
あれ、こちらではClickイベントでも Session("SelectedGridView") = GridView1 で渡せましたよ。
どうやってGridView1にデータソースを渡してますか? たとえば、If Not IsPostBackはクリックの際には通らないので この中でEnableViewState="false"のGridViewをDataBindしてたりすると空になるでしょうね。 型がわからなければGridView1.DataSource.GetType() を見てみればいいです。 |
|
投稿日時: 2009-04-03 01:30
べる様
ありがとうございます。 早速、明日試してみます。 GetTypeで調べられる。とのご指導、ありがとうございます。 べる様の環境では、取得できたfactorを参考に、Retryしてみます。 |
1