掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Webブラウザコントロールでオブジェクトをウィンドウの上端までスクロールさせて表示させるには? (ID:101274)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Vista / IE7 / C# + .NET 2.0 の WebBrowser コントロール+リフレクションでのレイトバインディングってマニアックな環境で色々試してみました。 どうも、ITxtRange の指す範囲が下に移動したとき、今表示しているのが ITxtRange オブジェクトの指す範囲よりも上だった場合、scrollIntoView の引数が無視されてとにかく表示できるところまでスクロールする、という動作があるようです。その結果 FALSE を設定したのと同じような挙動になる。厳密にはほかの条件があるんでしょうけれど。 お気づきの通り、offsetTop が有効に使えそうです。offsetTop は「今の表示の上端から IHTMLTxtRange の指す範囲の上端までの距離」ですから、body(IE だと DOCTYPE が宣言されてる場合 は documentElement になりますが)の scrollTop をそれだけ動かしてやればちょうど IHTMLTxtRange の指す範囲の上端が今の画面の上端にくることになります。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.