以编程方式隐藏内容类型字段

时间:2009-12-15 14:56:39

标签: sharepoint

我有两个内容类型引用的字段,我在功能接收器中使用一些代码来隐藏标题字段。一种内容类型继承自另一种,但不添加任何内容,只更改名称。他们将会有不同的工作流程。问题是代码只隐藏一个内容类型的标题字段,而不是派生的内容类型。

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

1 个答案:

答案 0 :(得分:1)

更新列表中的字段不会对子内容类型执行任何操作,因为列表中的每个内容类型都不是实际内容类型本身,而是“无声”子项。 (检查站点设置中类型的内容类型ID和列表中“相同”内容类型的内容类型ID。)

使用网站集的内容类型集合,更改字段和属性,然后调用内容类型对象的Update方法:

SPContentType.Update(true); // true means you want to push any changes made down to all child content types.