Visual.VisualScrollableAreaClip プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Visual のクリップ対象のスクロール可能な領域を取得または設定します。
public: property Nullable<System::Windows::Rect> VisualScrollableAreaClip { protected public:
Nullable<System::Windows::Rect> get(); protected:
void set(Nullable<System::Windows::Rect> value); };
public System.Windows.Rect? VisualScrollableAreaClip { protected internal get; protected set; }
member this.VisualScrollableAreaClip : Nullable<System.Windows.Rect> with get, set
Public Property VisualScrollableAreaClip As Nullable(Of Rect)
プロパティ値
スクロール可能なクリップ領域を表す Rect。クリップ領域が割り当てられていない場合は null
。
注釈
ソフトウェアでの VisualScrollableAreaClip レンダリング時に高速スクロールを有効にするプロパティを設定します。 これは、リモート デスクトップでの実行や仮想マシンでの実行など、リモート レンダリングのシナリオで役立ちます。 子がスクロールされる親要素にこのプロパティを設定します。 レンダリングが VisualScrollableAreaClip ハードウェア アクセラレータの場合、プロパティを設定しても効果はありません。
このプロパティを VisualScrollableAreaClip 使用すると、特定の高度なシナリオが有効になります。 次の一覧は、プロパティを使用するときに適用される注意事項を VisualScrollableAreaClip 示しています。
スクロール領域の背景は不透明である必要があります。または、スクロールアーティファクトが発生します。
このプロパティは VisualScrollableAreaClip 、WPF がソフトウェアでレンダリングされている場合にのみ、スクロールを高速化します。 たとえば、この状況は、アプリケーションがリモート デスクトップ経由で実行されている場合や、仮想マシンでローカルで実行されている場合に発生します。
ハードウェアでレンダリングする場合、スクロール動作は変更されません。 スクロール動作の違いを防ぐには、ハードウェアとソフトウェアの両方でプロパティを VisualScrollableAreaClip 有効にしておく必要があります。
回転変換とスキュー変換では、高速スクロールが無効になります。 スケール変換と、スクロール領域の上の水平方向または垂直方向の平行移動は正しく機能し、スクロール高速化を無効にしません。
アニメーションを使用して再描画するようにサブツリーを変更したり、スクロール可能領域の一部をトリガーしたりすると、期待どおりに動作しますが、再描画領域の高速スクロールの利点は失われます。 スクロールが発生するのと同じフレームの間にスクロール領域を無効にするアニメーションでは、この最適化の利点がなくなります。
四角形は VisualScrollableAreaClip ピクセルに内側にスナップされます。 したがって、スクロール四角形のスナップされたサイズは、常に設定したサイズ以下になります。
オフセットは下方向にスナップします。 つまり、前のスナップオフセットと現在のスナップオフセットの差は、常にピクセル数の整数です。
ヒット テストは最大ピクセルでオフにすることができます。
レイアウトの丸めは、スクロール可能な領域と境界ウィンドウのクライアント領域の端がピクセル境界にスナップされ、正しい配置が得られるようにするため、オンにする必要があります。
スクロール高速化は、階層化されたウィンドウでは機能しません。 これは、AllowTransparency == true、window.windowstyle == none などのウィンドウを意味します。
スクロール高速化は、全ウィンドウレンダリング中には発生しません。
ウィンドウが 2 つのモニターにまたがる場合、スクロール高速化は機能しません。
スクロールされた要素の親チェーンに中間レンダー ターゲットが存在する場合、スクロール 高速化は機能しません。 次の一覧は、これらの中間レンダー ターゲットの一部を示しています。
Clips
効果
DrawingBrushes
VisualBrushes
OpacityMasks
Opacity
フレームごとに発生できる高速スクロールは 1 つだけです。 複数の高速スクロール領域を使用できますが、フレーム中に高速スクロールを実行できるのはそのうちの 1 つだけです。 スクロールされる領域は不確定です。
スクロール 高速化では、スクロール領域の上 (z 順) の上にあるコンテンツがサポートされ、残りのコンテンツと共にスクロールされません。 システムは必要なすべてのダーティ領域を計算し、高速スクロールを完了しますが、意図せずにスクロールされた部分を画面上の正しい位置に戻すために、いくつかの追加のビットマップをワイヤ上に送信します。