0

MultiScaleImage の ViewportOrigin プロパティについて混乱しています。このプロパティは、サブ画像の相対位置をディープ ズーム領域全体に割り当てるために MultiScaleSubImage にのみ使用する必要があると思います。MultiScaleImage の ViewportOrigin プロパティ (つまり、ディープ ズーム領域全体) を設定する必要があるのはなぜですか? ディープ ズーム領域全体の左上隅は常に (0, 0) ですが、ディープ ズーム領域全体に ViewPortOrigin プロパティを適用する必要があるのはなぜですか?

以下の MSDN リンクから、このプロパティが MultiScaleImage と MultiScaleSubImage の両方に適用されることがわかります。

http://msdn.microsoft.com/en-us/library/cc963427(VS.95).aspx

MultiScaleImage の ViewportOrigin プロパティを設定する必要がある場合、サンプルを見せてもらえますか?

前もって感謝します、ジョージ

4

1 に答える 1

1

ViewportOrigin プロパティを操作することは、現在表示したい画像の部分をプログラムで設定する方法です。これは、ビューポートから全体が見えないように拡大された画像を考える場合に、はるかに重要です。たとえば、大きな地図です。リストから場所を選択して、その場所まで地図をスクロールできるようにしたい場合は、次のように記述します (実際に私はそうしました)。

private void LocateItem(Point ItemLocation)
        {
            ZoomMap.ViewportOrigin = new Point(
                -((ZoomMap.ViewportWidth / 2) - (ItemLocation.X),
                -((ZoomMap.ViewportWidth * (ZoomMap.ActualHeight / ZoomMap.ActualWidth) / 2) - (ItemLocation.Y));
         }

ZoomMap は、MultiScaleImage コントロールの名前です。それが役立つことを願っています!

于 2009-07-30T03:43:25.357 に答える