当用户要将新列添加到列表时,我正试图找出一种从可用列列表中隐藏自定义字段类型的简洁方法。我只希望在激活给定功能时显示此字段类型(该功能可能是用于我的目的的网站,网站或网络应用程序)。
一个理论(还没有机会尝试实现它)是我可以在fldtypes_myfield.xml文件中将所有ShowOnListAuthoringPages(和类似)属性设置为“false”,然后以编程方式将此值设置为true一个给定的功能被激活。
答案 0 :(得分:1)
在XML文件中,请设置
<Field Name="UserCreatable">FALSE</Field>
我不和我合作
答案 1 :(得分:0)
您确定能够在列表创建列中看到发布字段类型,并且已激活发布基础结构功能。我有一个MOSS 2007服务器,我根据团队网站创建网站集(在此发布基础结构中未激活),但我仍然可以在创建网站列页面中看到Rich HTML字段。我怀疑Publishing Infrastructure控制这个功能。我会说,你的选择很好。
答案 2 :(得分:0)
自定义字段类型功能根据农场范围定义,因为必须在整个农场范围内部署自定义字段类型。
您不能将其“隐藏”给用户。列表中的字段基于字段类型(bool,用户等)。您可以隐藏字段,而不是基本类型。因此,如果用户希望创建一个全新的(站点)列,他或她将能够看到该字段类型。
答案 3 :(得分:0)
因此,看起来真正隐藏字段时间的唯一方法是使用fldtypes_myfield.xml文件中的属性。有一系列属性会影响this MSDN page中描述的可见性。在我的特定情况下,我最终只使用UserCreatable属性并将其标记为false。这几乎意味着字段类型不会在任何地方显示在UI中,因此您需要创建一个功能或某种类型的列表/库模板,您可以使用该类型。我想这是我们希望在SP 2010中有所改进的领域(可能还有事件接收器的范围机制,因此他们不必在农场中“全球化”)。