- - PR -
GridViewの選択した位置の保持について
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-07-06 17:59
こんにちは。
GridViewにデータがバインドされており各行を選択出来る様に なっております。 選択後、該当の行の項目を複数のテキストボックスへ表示しております。 その際に、GridViewをスクロールして下の方の行を選択しても テキストボックスへデータ表示後に、一番上の行に戻ってしまいます。 選択はされているのですが、スクロールバーが一番上に戻ってしまい 選択している行が見えなくなっています。 選択した時に、そのまま位置を固定することは出来ないでしょうか? ご存じの方お見えでしたら是非とも教えていただきたくお願い申し上げます。 | ||||
|
投稿日時: 2007-07-06 18:16
Pageの
Page.MaintainScrollPositionOnPostBack プロパティ http://msdn2.microsoft.com/ja-jp/library/system.web.ui.page.maintainscrollpositiononpostback(VS.80).aspx をtrueにしておくとどうでしょうか。 | ||||
|
投稿日時: 2007-07-06 18:46
IIJIMAS様
早速のご回答有り難うございました。 試してみたのですが、駄目でした... 現状の状態ですが アップデートパネルの中にGridViewとテキストボックスが設置されております。 GridViewのSelectedIndexChangedで選択をクリックした際にテキストボックスに 選択行の内容を移送します。 そうしますと、GridViewの位置が一番上まで戻ってしまいます。 MaintainScrollPositionOnPostBack=trueはページのロード時にもSelectedIndexChangedの中にも記述しましたが結果は変わりませんでした。 お手数をおかけしますが、ご教授の程よろしくお願い申し上げます。 | ||||
|
投稿日時: 2007-07-06 22:23
Ajax Extensions を使っているなら最初に書いてほしい。 で、試してみましたがこちらの環境ではスクロールしません。 他にに言ってないことはないですか? まずは新規プロジェクトを作って現在のプロジェクトとどこが違うのかを比べてみてはどうですか? _________________ かるあ のメモ と スニペット | ||||
|
投稿日時: 2007-07-07 06:15
かるあさんのおっしゃるように、パーシャルポストバックを使用しているのなら
スクロールされないはずですよ。 _________________ ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集 | ||||
|
投稿日時: 2007-07-07 10:26
かるあ様 Access様
返信いただき有り難うございます。 1からプロジェクトを作り試してみましたが、やはり駄目でした。 もう一度、良く状況を確認しましたところ、 アップデートパネルの中にパネルをPanelを設置しスクロールバーを Verticalに設定した中にGridViewを入れておりました。 (1回で説明できず申し訳ありません。) この状態ですと、選択後、一番上に戻ってしまいます。 記述している文は Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Page.MaintainScrollPositionOnPostBack = True End Sub と Private Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView1.SelectedIndexChanged Me.TextBox1.Text = Me.GridView1.SelectedRow.Cells(1).Text End Sub のみです。 よろしくお願い申し上げます。 | ||||
|
投稿日時: 2007-07-07 11:21
UpdatePanelの中にPanelを入れるのではなくて、 Panelの中にUpdatepanelを入れるようにしてみてはどうでしょうか。 | ||||
|
投稿日時: 2007-07-07 11:48
IIJIMAS様
有り難うございました。無事出来ました。 金川賢一朗 |