【質問】ASP.NETスレ ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
140:nobodyさん 07/09/12 23:00:57 ASP.NET2.0、Ajax Extensionsを使用しています。 Panelの中にUpdatepanel、Updatepanelの中で<div> </div>で囲んだ Gridviewコントロールを配置しています。Gridviewで表示した表は 一定間隔で自動更新表示(タイマー使用)しています。 ブラウザ側のスクロールバー位置はMaintainScrollPositionOnPostback="true" により同じ位置を保持可能ですが、ヘッダー固定したGridView側のスクロール バー位置が上に戻ってしまいます。内部のスクロールバー位置ももとの位置を 保持させるにはどのようなコードを追加すればよいのでしょうか。 ご存知の方、おしえてください。 141:nobodyさん 07/09/12 23:52:58 >>129 ルート演算子「~」とかがおかしくなった気がする。 MSDNあたりでこれ関係の記述を見た記憶が。 >>139 自分でセッションの代わりを作らない限り無理だと思う。 で、絶対パスでセッションが切れるとかリダイレクトとかの問題なら 解決策はあるが、見た目の問題とかならしらね。 >>140 MaintainScrollPositionOnPostback="true"で作成される JavaScriptと同じ事をやればいい。 Hidden項目2つ(x,y)用意してGridViewを囲んでるdivの(javascriptの) onscrollイベントで縦・横位置を記憶するJavascriptを作る で、次に縦・横位置を復元するjavascriptを用意する。 ここまでは、UpdatePanelだろうが通常のポストバックだろうが同じ。 次に通常のポストバックなら縦・横位置を復元するjavascriptを Page.ClientScript.RegisterStartupScriptで呼べばいいが、 UpdatePanelの場合は非同期通信で作成されるJavascriptの endRequestをフックするか、ASP.NET側のScriptManager.RegisterStartupScript あたりで非同期通信後に呼ぶ。 まぁ、GridViewが複数同一ページ内にある場合とか考えても、 Hidden項目がその分必要になるから、スクロールしているdivを カスタムコントロール化するべきだと思うが。 ScriptManager.RegisterStartupScript
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
5060日前に更新/244 KB
担当:undef