Скрыть поле типа контента программно - PullRequest
0 голосов
/ 15 декабря 2009

У меня есть поле, на которое ссылаются два типа контента, и я использую некоторый код в приемнике объектов, чтобы скрыть поле заголовка. Один тип контента наследуется от другого, но ничего не добавляет, только меняет имя. К ним будут прикреплены разные рабочие процессы. Проблема в том, что код скрывает поле заголовка только для одного типа контента, а не для производного.

SPList members = web.Lists["Inspections"];
SPField titleField = members.Fields["Title"];
titleField.ShowInNewForm = false;
titleField.ShowInEditForm = false;
titleField.Required = false;
titleField.Update();

1 Ответ

1 голос
/ 15 декабря 2009

Обновление поля в списке ничего не будет делать с дочерними типами контента, поскольку каждый тип контента в списке не сам фактический тип контента, а «молчаливый» потомок. (проверьте идентификаторы типа содержимого в настройках сайта и идентичного типа содержимого в списке).

вместо этого используйте коллекцию типов контента семейства сайтов, измените поле и свойства, а затем вызовите метод обновления объекта типа контента:

SPContentType.Update(true); // true means you want to push any changes made down to all child content types.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...