注
このドキュメントは、System.Windows.Automation 名前空間で定義されているマネージド UI オートメーション クラスを使用する .NET Framework 開発者を対象としています。 UI オートメーションの最新情報については、「Windows Automation API: UI オートメーション 」を参照してください。
このトピックでは、カレンダー コントロールの種類に対する UI オートメーションのサポートについて説明します。 UI オートメーションでは、コントロール型は、 ControlTypeProperty プロパティを使用するためにコントロールが満たす必要がある一連の条件です。 条件には、UI オートメーション ツリー構造、UI オートメーション プロパティ値、コントロール パターン、および UI オートメーション イベントに関する特定のガイドラインが含まれます。
予定表コントロールを使用すると、ユーザーは簡単に日付を決定し、他の日付を選択できます。
次のセクションでは、Calendar コントロール型に必要な UI オートメーション ツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI オートメーションの要件は、Windows Presentation Foundation (WPF)、Win32、Windows フォームのいずれであっても、すべての予定表コントロールに適用されます。
必要な UI オートメーション ツリー構造
次の表は、カレンダー コントロールに関連する UI オートメーション ツリーのコントロール ビューとコンテンツ ビューを示し、各ビューに含めることができる内容を示しています。 UI オートメーション ツリーの詳細については、「 UI オートメーション ツリーの概要」を参照してください。
コントロール ビュー | コンテンツ ビュー |
---|---|
カレンダー
|
カレンダー - ListItem (数量は表示日数によって異なります) |
予定表コントロールは、ユーザー インターフェイス内でさまざまな形式で表すことができます。 UI オートメーション ツリーのコントロール ビューに表示される保証されるコントロールは、データ グリッド、ヘッダー、ヘッダー項目、およびリスト項目コントロールだけです。
必要な UI オートメーション プロパティ
次の表に、カレンダー コントロールに特に関連する値または定義を持つ UI オートメーション プロパティを示します。 UI オートメーション プロパティの詳細については、「 クライアントの UI オートメーション プロパティ」を参照してください。
UI オートメーション プロパティ | 価値 | 注記 |
---|---|---|
AutomationIdProperty | 「ノート」を参照してください。 | このプロパティの値は、アプリケーション内のすべてのコントロールで一意である必要があります。 |
BoundingRectangleProperty | 「ノート」を参照してください。 | コントロール全体を格納する最も外側の四角形。 |
ClickablePointProperty | 「ノート」を参照してください。 | 外接する四角形がある場合にサポートされます。 外接する四角形内のポイントのすべてがクリック可能でない場合、かつ特殊なヒットテストを行うのであれば、オーバーライドしてクリック可能なポイントを指定してください。 |
ControlTypeProperty | カレンダー | この値は、すべての UI フレームワークで同じです。 |
IsContentElementProperty | 正しい | カレンダー コントロールは、UI オートメーション ツリーのコンテンツ ビューに常に含まれます。 |
IsControlElementProperty | 正しい | カレンダー コントロールは、常に UI オートメーション ツリーのコントロール ビューに含まれます。 |
IsKeyboardFocusableProperty | 「ノート」を参照してください。 | コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。 |
LabeledByProperty | 「ノート」を参照してください。 | ドキュメント コントロールのラベル。 通常、ドキュメントのタイトルが使用されます。 |
LocalizedControlTypeProperty | カレンダー | Calendar コントロール型に対応するローカライズされた文字列。 |
NameProperty | 「ノート」を参照してください。 | カレンダー コントロールは通常、現在の日付からその名前を取得します。 |
必要な UI オートメーション コントロール パターン
次の表に、すべてのカレンダー コントロールでサポートされる必要がある UI オートメーション コントロール パターンを示します。 コントロール パターンの詳細については、「UI オートメーション コントロール パターンの概要」を参照してください。
コントロール パターン/パターン プロパティ | 支援 | 注記 |
---|---|---|
IGridProvider | イエス | カレンダー コントロールは常に Grid パターンをサポートします。これは、1 か月以内の日数は空間的に移動できるアイテムであるためです。 |
IScrollProvider | 依存 | ほとんどの予定表コントロールでは、ページごとのビューの反転がサポートされています。 ページング ナビゲーションをサポートするには、スクロール パターンをお勧めします。 |
ISelectionProvider | 依存 | ほとんどのカレンダー コントロールは、サブ要素の選択として特定の日、月、または年を保持します。 一部の予定表は複数選択可能で、その他の予定表は単一の選択のみ可能です。 |
ITableProvider | イエス | カレンダー コントロールには、週の曜日のサブツリー内に常にヘッダーが含まれるため、Table パターンをサポートする必要があります。 |
IValueProvider | いいえ | カレンダー コントロールの値コントロール パターンは、コントロールに直接値を設定できないため、必要ありません。 特定の日付がコントロールに関連付けられている場合は、Selection コントロール パターンによって情報を提供する必要があります。 |
必要な UI オートメーション イベント
次の表に、すべてのカレンダー コントロールでサポートされる必要がある UI オートメーション イベントの一覧を示します。 イベントの詳細については、「 UI オートメーション イベントの概要」を参照してください。
UI オートメーション イベント | 支援 | 注記 |
---|---|---|
AutomationFocusChangedEvent | 必須 | 無し |
BoundingRectangleProperty プロパティ変更イベント。 | 必須 | 無し |
IsEnabledProperty プロパティ変更イベント。 | 必須 | 無し |
IsOffscreenProperty プロパティ変更イベント。 | 必須 | 無し |
LayoutInvalidatedEvent | 必須 | 無し |
StructureChangedEvent | 必須 | 無し |
CurrentViewProperty プロパティ変更イベント。 | 依存 | 無し |
HorizontallyScrollableProperty プロパティ変更イベント。 | 依存 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
HorizontalScrollPercentProperty プロパティ変更イベント。 | 依存 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
HorizontalViewSizeProperty プロパティ変更イベント。 | 依存 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
VerticalScrollPercentProperty プロパティ変更イベント。 | 依存 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
VerticallyScrollableProperty プロパティ変更イベント。 | 依存 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
VerticalViewSizeProperty プロパティ変更イベント。 | 依存 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
InvalidatedEvent | 必須 | 無し |