UI オートメーション Window コントロール パターンの実装
Note
このドキュメントは、System.Windows.Automation 名前空間で定義されているマネージド UI オートメーション クラスを使用する .NET Framework 開発者を対象としています。 UI オートメーションの最新情報については、Windows Automation API の「UI オートメーション」を参照してください。
このトピックでは、 IWindowProviderのプロパティ、メソッド、イベントに関する情報など、 WindowPattern の実装のためのガイドラインと規則について説明します。 その他のリファレンスへのリンクは、トピックの最後に記載します。
WindowPattern コントロール パターンは、従来のグラフィカル ユーザー インターフェイス (GUI) 内で、ウィンドウベースの基本的な機能を提供するコントロールをサポートするために使用されます。 このコントロール パターンを実装する必要があるコントロールの例として、最上位のアプリケーション ウィンドウ、マルチドキュメント インターフェイス (MDI) 子ウィンドウ、サイズ変更可能な分割ペイン コントロール、モーダル ダイアログ ボックス、バルーン ヘルプ ウィンドウがあります。
実装のガイドラインと規則
Window コントロール パターンを実装する場合は、次のガイドラインと規則に注意してください。
UI オートメーションを使用してウィンドウのサイズと位置の両方を変更する機能をサポートするには、コントロールが ITransformProvider に加えて IWindowProviderを実装する必要があります。
コントロールを移動、サイズ変更、最大化、最小化、および閉じられるようにするタイトル バーの要素とタイトル バーを格納するコントロールは、通常 IWindowProviderを実装することが求められます。
ツールヒントのポップアップやコンボ ボックス、またはメニューのドロップダウンなどのコントロールは、通常 IWindowProviderを実装しません。
バルーン ヘルプ ウィンドウは、ウィンドウと同様の閉じるボタンを提供することで、基本的なツールヒント ポップアップから区別されます。
全画面表示モードは、アプリケーション固有の機能であり、通常のウィンドウの動作ではないため、IWindowProvider によってサポートされません。
IWindowProvider の必須メンバー
IWindowProvider インターフェイスには、次のプロパティ、メソッド、イベントが必要です。
必須メンバー | メンバーの型 | メモ |
---|---|---|
InteractionState | プロパティ | なし |
IsModal | プロパティ | なし |
IsTopmost | プロパティ | なし |
Maximizable | プロパティ | なし |
Minimizable | プロパティ | なし |
VisualState | プロパティ | なし |
Close | 方法 | なし |
SetVisualState | 方法 | なし |
WaitForInputIdle | 方法 | なし |
WindowClosedEvent | イベント | なし |
WindowOpenedEvent | イベント | なし |
WindowInteractionState | イベント | ReadyForUserInteraction |
例外
プロバイダーは、次の例外をスローする必要があります。
例外の種類 | 条件 |
---|---|
InvalidOperationException | SetVisualState - 要求された動作がコントロールによってサポートされない場合。 |
ArgumentOutOfRangeException | WaitForInputIdle - パラメーターが有効な数値ではない場合。 |