次の方法で共有


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

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

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

ValuePattern コントロール パターンは、範囲にまたがらず、文字列として表すことができる組み込み値を持つコントロールをサポートするために使用されます。 この文字列は、コントロールとその設定に応じて編集可能です。 このパターンを実装するコントロールの例については、「 UI オートメーション クライアントのコントロール パターン マッピング」を参照してください。

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

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

  • ListItemTreeItemなどのコントロールは、コントロールの現在の編集モードに関係なく、いずれかの項目の値が編集可能な場合にValuePatternをサポートする必要があります。 親コントロールは、子項目が編集可能な場合も ValuePattern をサポートする必要があります。

編集可能なリスト アイテム。 編集可能なリスト アイテムの例

  • 単一行の編集コントロールでは、 IValueProviderを実装することで、コンテンツへのプログラムによるアクセスがサポートされます。 ただし、複数行の編集コントロールは IValueProviderを実装しません。代わりに、 ITextProviderを実装することでコンテンツへのアクセスを提供します。

  • 複数行の編集コントロールのテキストコンテンツを取得するには、コントロールが ITextProviderを実装する必要があります。 ただし、 ITextProvider はコントロールの値の設定をサポートしていません。

  • IValueProvider では、書式設定情報または部分文字列値の取得はサポートされていません。 これらのシナリオで ITextProvider を実装します。

  • IValueProvider は、色の値 ("yellow" など) と同等の内部 RGB 構造体との間の文字列マッピングをサポートする、Microsoft Word のカラー ピッカー 選択コントロール (下図) などのコントロールによって実装される必要があります。

黄色が強調表示されたカラー ピッカー。 色見本文字列マッピングの例

IValueProvider の必須メンバー

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

必須メンバー メンバーの種類 注記
IsReadOnlyProperty プロパティ 無し
ValueProperty プロパティ 無し
SetValue メソッド 無し

例外

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

例外の種類 条件
InvalidOperationException SetValue

- ロケール固有の情報が正しくない形式でコントロールに渡された場合 (形式が正しくない日付など)。
ArgumentException SetValue

- 新しい値を文字列からコントロールが認識する形式に変換できない場合。
ElementNotEnabledException SetValue

- 有効になっていないコントロールを操作しようとした場合。

こちらも参照ください