PropertySchema 要素 (フィールド型)
最終更新日: 2015年3月9日
適用対象: SharePoint Foundation 2010
この記事の内容
属性
子要素
親要素
重要 |
---|
このトピックでは、ユーザー設定フィールド型のプロパティのレンダリングの、古い方法で使用されたマークアップについて説明します。このトピックは、SharePoint Foundation の以前のバージョンで作成されたユーザー設定フィールド型のプロパティのデバッグを支援する目的のためだけに提供されています。推奨される方法についての情報は、「ユーザー設定フィールド型のプロパティのレンダリング」を参照してください。 |
Field 要素として定義されている各プロパティで、ユーザー設定フィールド型の特別な変数プロパティのスキーマを表します。
<PropertySchema>
</PropertySchema>
属性
属性 |
説明 |
---|---|
None |
子要素
親要素
コメント
ユーザー設定フィールド型には、フィールド型に基づくある列から、同じフィールド型に基づく別の列まで値が変化する特別なプロパティを設定できます。たとえば、特定の正規表現 (アメリカの電話番号の ^(\d{3})\d{3}-\d{4}$など) に一致する String 値を保持するように設計されたユーザー設定の正規表現フィールド型があります。イギリスのライセンス プレート番号、アメリカの社会保障番号、中国の電話番号などについて個別にユーザー設定正規表現フィールド型を作成するよりも、単一の正規表現フィールド型を作成し、フィールド型に基づいて列を作成するユーザーが、列ごとに正規表現を設定できるようにする方が効率的です。たとえば、"アメリカの電話番号" 列を作成するユーザーは、列の正規表現を上記の文字列に設定します。"ブラジルの郵便箱" 列を作成するユーザーは、列の正規表現を ^\d{5}\-\d{3}$ に設定します。
これを行うには、ユーザー設定フィールドに、新しい列を作成するときにユーザー インターフェイス (UI) の編集可能なコントロールに表示される RegularExpression プロパティが必要です。SharePoint Foundation では、これは [サイト内の新しい列] ページと [列の作成] ページの [列の追加設定] セクションにあります。fldtypes*.xml ファイルの PropertySchema 要素は、これらの変数のプロパティが宣言された場所にあり、既定のレンダリング スキーマが指定されます。オプションで、既定の値を指定することもできます。
注意
PropertySchema 要素にユーザー設定フィールド型の変数プロパティを定義すると、そのプロパティは、スキーマに基づいて SharePoint Foundation によって自動的にレンダリングされます。
例
次の例は、"RegularExpressionMatch" という名前のユーザー設定フィールド型にプロパティ スキーマを定義します。このスキーマは、フィールド型の列をベースにするときに、列の作成者が使用するフィールドを宣言します。このフィールドは、列の作成者が RegularExpressionMatch フィールド型でベースにする各列に異なる正規表現を設定することが目的です。
DisplayName と編集可能な Text フィールドが、[サイト内の新しい列] ページと [列の作成] ページの [列の追加設定] セクションに表示されます。MaxLength 属性は、正規表現の最大文字数を設定し、DisplaySize は正規表現を表示するフィールドのサイズを設定します。正規表現が DisplaySize よりも長い場合は、ユーザーはフィールドをスクロールして正規表現の残りの部分を確認できます。
この例では既定値は設定されていませんが、主にアメリカの電話番号を格納する列を作成するためにこのフィールドを使用するとわかっている場合は、開発者は既定値として <Default>^(\d{3})\d{3}-\d{4}$</Default> を設定できます。
次の例は、見やすいように編集されています。
<FieldType>
<Field Name="TypeName">RegularExpressionMatch</Field>
…
<PropertySchema>
<Fields>
<Field Name="RegularExpression"
DisplayName="Regular Expression To Match"
MaxLength="500"
DisplaySize="100"
Type="Text">
<Default></Default>
</Field>
</Fields>
</PropertySchema>
…
</FieldType>