CAML не может ссылаться на пользовательские свойства в пользовательских полях - PullRequest
3 голосов
/ 27 мая 2009

Я пытаюсь создать пользовательский тип поля в SharePoint. Мой тип настраиваемого поля имеет настраиваемое свойство CustomProperty.

<FieldTypes>
  <FieldType>
    <Field Name="TypeName">CustomField</Field>
    <Field Name="InternalType">CustomField</Field>
    ..............................
    ..............................
    <PropertySchema>
      <Fields>
        <Field Name="CustomProperty" DisplayName="CustomProperty" Type="Text" Hidden="TRUE" />
      </Fields>
      <RenderPattern Name="DisplayPattern">
      <Property Select="CustomProperty" />
    </RenderPattern>
  </FieldType>
</FieldTypes>

Я пытаюсь отобразить значение этого пользовательского свойства в DisplayPattern.

Но похоже, что CAML не может ссылаться на пользовательские свойства.

Я не получаю никакого значения для свойства CustomValue, хотя оно установлено правильно.

Есть идеи, как ссылаться на пользовательские свойства в CAML?

Ответы [ 2 ]

1 голос
/ 24 ноября 2010

К сожалению, из того, что я видел, нет простого способа достичь этого.

Лучшим вариантом является использование этого. GetCustomProperty ("CustomProperty") в переопределенной функции GetFieldValue (или GetFieldValueAsHtml для поля заметки).

Строка значения, передаваемая в функцию GetFieldValue, является выходным сигналом вашего CAML, поэтому вы можете добавить к нему и передать его.

0 голосов
/ 27 мая 2009

Вот пример:

http://blogs.msdn.com/toddca/archive/2009/01/23/customizing-the-rendering-of-a-custom-spfield.aspx

Я сам не пробовал, и понятия не имею, может ли изменение SchemaXml вызвать непредвиденные проблемы.

...