次の方法で共有


UI オートメーション変換コントロール パターンの実装

このドキュメントは、System.Windows.Automation 名前空間で定義されているマネージド UI オートメーション クラスを使用する .NET Framework 開発者を対象としています。 UI オートメーションの最新情報については、「Windows Automation API: UI オートメーション 」を参照してください。

このトピックでは、プロパティ、メソッド、イベントに関する情報など、ITransformProviderを実装するためのガイドラインと規則について説明します。 その他の参照へのリンクは、トピックの最後に一覧表示されます。

TransformPattern コントロール パターンは、2 次元空間内で移動、サイズ変更、または回転できるコントロールをサポートするために使用されます。 このコントロール パターンを実装するコントロールの例については、「UI オートメーション クライアントのコントロール パターン マッピング 」を参照してください。

実装のガイドラインと規則

Transform コントロール パターンを実装する場合は、次のガイドラインと規則に注意してください。

  • このコントロール パターンのサポートは、デスクトップ上のオブジェクトに限定されません。 このコントロール パターンは、コンテナー オブジェクトの境界内で子を自由に移動、サイズ変更、または回転できる場合にも、コンテナー オブジェクトの子でサポートされている必要があります。

  • オブジェクトを移動、サイズ変更、または回転することはできません。これにより、結果として得られる画面の位置がコンテナーの座標の外に完全に移動され、キーボードやマウスにアクセスできなくなります (たとえば、トップレベル ウィンドウが画面外に移動されたときや、子オブジェクトがコンテナーのビューポートの境界の外に移動された場合など)。 このような場合、オブジェクトは要求された画面座標の近くに可能な限り配置され、上または左の座標はコンテナーの境界内に配置されるようにオーバーライドされます。

  • マルチモニター システムの場合、結合されたデスクトップ画面座標の外側でオブジェクトが移動、サイズ変更、または回転した場合、オブジェクトは、要求された座標にできるだけ近いプライマリ モニターに配置されます。

  • すべてのパラメーターとプロパティ値は、ロケールに依存せず、絶対です。

ITransformProvider の必須メンバー

ITransformProviderの実装には、次のプロパティとメソッドが必要です。

必須メンバー メンバーの種類 注記
CanMove プロパティ 無し
CanResize プロパティ 無し
CanRotate プロパティ 無し
Move メソッド 無し
Resize メソッド 無し
Rotate メソッド 無し

このコントロール パターンには、関連付けられたイベントはありません。

例外

プロバイダーは、次の例外をスローする必要があります。

例外の種類 条件
InvalidOperationException Move

- CanMoveProperty が false の場合。
InvalidOperationException Resize

- CanResizeProperty が false の場合。
InvalidOperationException Rotate

- CanRotateProperty が false の場合。

こちらも参照ください