Поделиться через


Элемент PropertySchema (Типы полей)

Применимо к: SharePoint 2016 | SharePoint Foundation 2013 | SharePoint Online | SharePoint Server 2013

Представляет схему отдельных свойств специальной переменной настраиваемого типа поля, все свойства которого определяются как элемент Field.

<PropertySchema>
</PropertySchema>

Важно!

В этом разделе описана разметка, которая использовалась в устаревшем методе отображения свойств настраиваемого типа поля. Он предоставляется исключительно для отладки свойств настраиваемых типов полей, разработанных для более ранних версий SharePoint Foundation. Сведения о рекомендуемом методе см. в разделе Отрисовка свойства пользовательского типа поля.

Элементы и атрибуты

В разделах ниже приводится описание атрибутов, дочерних и родительских элементов.

Атрибуты

Нет

Дочерние элементы

Родительские элементы

Замечания

Настраиваемые типы поля могут иметь специальные свойства, значения которых изменяются от одного столбца, основанного на типе поля, до другого столбца, основанного на том же типе поля. Рассмотрим пользовательский тип поля регулярного выражения, предназначенный для хранения строковых значений, соответствующих определенному регулярному выражению, например ^(\d{3})\d{3}-\d{4}$ для американских телефонных номеров.

Вместо того, чтобы создавать отдельные типы полей настраиваемых регулярных выражений для британских номеров номерных знаков, американских номеров социального страхования, китайских телефонных номеров и т. д., эффективнее создать один тип поля регулярного выражения и разрешить пользователям, создающим столбцы на основе типа поля, задавать регулярное выражение, которое должно быть сопоставлено по столбцам. Например, пользователь, создающий столбец "Американский телефонный номер", задает регулярное выражение столбца в предыдущей строке. Другой пользователь, создающий столбец "Бразильский почтовый ящик", присвоил регулярному выражению своего столбца значение ^\d{5}\-\d{3}$.

Чтобы это сделать, пользовательское поле должно иметь свойство RegularExpression, которое отображается в изменяемом элементе управления пользовательского интерфейса при создании нового столбца. В SharePoint Foundation это находится в разделе Дополнительные параметры столбца на странице Новый столбец сайта и на странице Создание столбца . Элемент PropertySchema в fldtypes*.xml файле — это место, где такие свойства переменной объявляются и получают схему отрисовки по умолчанию. При необходимости свойствам также можно задать значения по умолчанию.

Примечание.

При определении свойств переменной настраиваемого типа поля в элементе PropertySchema SharePoint Foundation автоматически отрисовывает эти свойства на основе схемы.

Пример

В следующем примере определяется схема свойств для настраиваемого типа поля с именем RegularExpressionMatch. В схеме объявляется поле для использования при создании столбцов на основе типа поля. Поле предназначено для того, чтобы создатель столбца смог задавать различные регулярные выражения для каждого столбца, основанного на типе поля RegularExpressionMatch.

Поля DisplayName и редактируемый текст появятся в разделе Дополнительные параметры столбца на страницахНовый столбец сайта и Создать столбец. Атрибут 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>

См. также