次の方法で共有


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

更新 : 2007 年 11 月

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

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

このトピックには次のセクションが含まれています。

  • 実装のガイドラインと規則
  • IValueProvider の必須メンバ
  • 例外
  • 関連トピック

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

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

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

編集可能なリスト項目の例
編集可能なリスト項目。

  • 単一行エディット コントロールは、IValueProvider を実装することにより、プログラムによる要素へのアクセスをサポートします。一方、複数行エディット コントロールは、IValueProvider を実装せず、代わりに ITextProvider を実装することによって内容へのアクセスを提供します。

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

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

  • 色の値 ("黄" など) と等価の内部 RGB 構造体との間での文字列マッピングをサポートする Microsoft Word の [Color Picker] 選択コントロール (次の図を参照) などのコントロールで、IValueProvider を実装する必要があります。

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

IValueProvider の必須メンバ

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

必須メンバ

メンバ型

説明

IsReadOnlyProperty

プロパティ

なし

ValueProperty

プロパティ

なし

SetValue

メソッド

なし

例外

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

例外の種類

条件

InvalidOperationException

SetValue

  • ロケール固有の情報が不適切な形式でコントロールに渡された (不適切に書式設定された日付など)。

ArgumentException

SetValue

  • 文字列を、コントロールが認識する形式の新しい値に変換できない。

ElementNotEnabledException

SetValue

  • 有効でないコントロールを操作しようとした。

参照

処理手順

UI オートメーション プロバイダでのコントロール パターンのサポート

ValuePattern 挿入テキストのサンプル

UI オートメーションにおけるキャッシュの使用

概念

UI オートメーション コントロール パターンの概要

クライアントの UI オートメーション コントロール パターン

UI オートメーション ツリーの概要