UI オートメーション Scroll コントロール パターンの実装
メモ |
---|
このドキュメントは、System.Windows.Automation 名前空間で定義されているマネージ UI Automation クラスを使用する .NET Framework 開発者を対象としています。UI Automationに関する最新情報については、「Windows Automation API: UI Automation (Windows オートメーション API: UI オートメーション)」を参照してください。 |
ここでは、イベントやプロパティに関する情報など、IScrollProvider を実装するガイドラインと規則について説明します。 追加参照へのリンクはトピックの最後に示します。
ScrollPattern コントロール パターンは、子オブジェクトのコレクションのスクロール可能なコンテナーとして機能するコントロールをサポートするために使用します。 このコントロールは、一般的にはスクロール バーを使用してスクロール機能をサポートしますが、その必要はありません。
スクロール バーを使用しないスクロール コントロールの例
このコントロールを実装するコントロールの例については、「UI オートメーション クライアントのコントロール パターン マッピング」を参照してください。
このトピックは、次のセクションで構成されています。
- 実装のガイドラインと規則
- IScrollProvider の必須メンバー
- 例外
- 関連トピック
実装のガイドラインと規則
Scroll コントロール パターンを実装する場合は、次のガイドラインと規則に注意してください。
このコントロールの子は、IScrollItemProvider を実装する必要があります。
コンテナー コントロールのスクロール バーは、ScrollPattern コントロール パターンをサポートしません。 代わりに、RangeValuePattern コントロール パターンをサポートする必要があります。
スクロールをパーセンテージで計測する場合、スクロールの目盛りに関連するすべての値または量を 0 ~ 100 の範囲に標準化する必要があります。
HorizontallyScrollableProperty および VerticallyScrollableProperty は、IsEnabledProperty に依存しません。
HorizontallyScrollableProperty が false の場合、HorizontalViewSizeProperty は 100% に設定され、HorizontalScrollPercentProperty は NoScroll に設定されます。 同様に、VerticallyScrollableProperty が false の場合、VerticalViewSizeProperty は 100% に設定され、VerticalScrollPercentProperty は NoScroll に設定されます。 これにより、UI オートメーション クライアントは、これらのプロパティ値を SetScrollPercent メソッド内で使用できます。クライアントがスクロールを必要としない方向がアクティブになっても、競合状態を回避できます。
HorizontalScrollPercent はロケール固有です。 HorizontalScrollPercent を 100.0 に設定するには、英語のように左から右に読む言語の場合、コントロールのスクロール位置を右端と同等の位置に設定する必要があります。 また、アラビア語のように右から左に読む言語の場合、HorizontalScrollPercent を 100.0 に設定するには、スクロール位置を左端の位置に設定する必要があります。
IScrollProvider の必須メンバー
次のプロパティとメソッドは、IScrollProvider の実装時に必要です。
必須メンバー |
メンバー型 |
説明 |
---|---|---|
プロパティ |
なし |
|
プロパティ |
なし |
|
プロパティ |
なし |
|
プロパティ |
なし |
|
プロパティ |
なし |
|
プロパティ |
なし |
|
メソッド |
なし |
|
メソッド |
なし |
このコントロール パターンに関連付けられたイベントはありません。
例外
プロバイダーは次の例外をスローする必要があります。
例外の種類 |
状態 |
---|---|
Scroll は、コントロールが水平方向スクロールまたは垂直方向スクロールのためだけに SmallIncrement 値をサポートしているが、LargeIncrement 値が渡された場合に、この例外をスローします。 |
|
SetScrollPercent は、倍精度浮動小数点数に変換できない値が渡された場合に、この例外をスローします。 |
|
SetScrollPercent は、100 より大きい、または 0 より小さい値が渡された (NoScroll と等価の -1 を除く) 場合に、この例外をスローします。 |
|
Scroll および SetScrollPercent は、サポートされていない方向にスクロールしようとした場合に、この例外をスローします。 |
参照
処理手順
UI オートメーション プロバイダーでのコントロール パターンのサポート