我曾经阅读过,在SharePoint中创建新的ContentType时,更改Title列的显示名称并不明智。然而,它是可能的(即列静态名称仍然是“标题”,但显示名称是“描述”)。更改ContentType中标题列的显示名称,是否明智?
所以我的问题是,什么是可能出现的并发症?为什么我不改变它,当我创建一个需要“描述”列但没有“标题”列的新ContentType时?
我曾经阅读过,在SharePoint中创建新的ContentType时,更改Title列的显示名称并不明智。然而,它是可能的(即列静态名称仍然是“标题”,但显示名称是“描述”)。更改ContentType中标题列的显示名称,是否明智?
所以我的问题是,什么是可能出现的并发症?为什么我不改变它,当我创建一个需要“描述”列但没有“标题”列的新ContentType时?
我同意你需要与CAML XML做到这一点。我只想发布如何做的实际细节,以便下一个有这个问题的人不必像我一样继续搜索。感谢Lambros's Blog的答案。
实际上,你需要更新三个字段 - 标题字段,并在此基础上两个计算字段,你需要使用预定义的SharePoint ID值。请参阅下面或上面的链接:
您需要通过添加添加到FieldRefs如下:
<FieldRef Name="LinkTitle" ID="{82642ec8-ef9b-478f-acf9-31f7d45fbc31}" DisplayName="Renamed" Sealed="TRUE"/>
<FieldRef Name="LinkTitleNoMenu" ID="{bc91a437-52e7-49e1-8c4e-4698904b2b6d}" DisplayName="Renamed" Sealed="TRUE"/>
<FieldRef Name="Title" ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" DisplayName="Renamed" Sealed="TRUE"/>
您需要通过添加添加到各字段的内容:
<Field Name="LinkTitle" ID="{82642ec8-ef9b-478f-acf9-31f7d45fbc31}" DisplayName="Renamed" Sealed="TRUE" Type="Calculated"/>
<Field Name="LinkTitleNoMenu" ID="{bc91a437-52e7-49e1-8c4e-4698904b2b6d}" DisplayName="Renamed" Sealed="TRUE" Type="Calculated"/>
<Field Name="Title" ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" DisplayName="Renamed" Sealed="TRUE" Type="Text"/>
那应该这样做。再次感谢Lambros。
如果您正在开发自己的内容类型为XML的文件在溶液中的功能,那么就没有问题,更改标题栏的显示名称。
问题是,当用户尝试做到这一点通过UI。
在他们改变那是什么情况标题网站栏的显示名称。一旦他们发现它更改了所有列表中的标题列,他们会尝试将其更改回来,但这由聪明的SharePoint用户界面阻止,因为标题是保留名称。
好的,现在我明白了。我想在Visual Studio中创建我的内容类型为xml,所以我保存了。谢谢。 – Turrau 2010-07-08 15:53:52
我有你的“什么是可能发生的并发症”问题的第一手经验,所以让我给你,我只是碰到了这是造成我很多痛苦今早的具体例子。
你不小心改变了站点的列名(认为你只是影响了一个特定的列表),但后来意识到你已经改变了父项站点列,并且检查了适用于所有继承内容的漂亮盒子类型。 (我觉得这是公牛鞭打自己...呃)。
因此,所有的名单都受到影响,当然。但是等等,这里会有更多的痛苦。内部SharePoint人员列表(称为“用户信息列表”)也受到影响,您无法将其更改回原始的“名称”列标题。当你试图通过Microsoft Access连接到SharePoint列表的时候,你会发现这是真的,你可以通过硬编码查找用户信息列表,专门查找名为“Name”的列。因此,它打破了这些链接列表,使它们无法通过MS Access。
我现在正在研究一种通过其他方法重新命名它的方法,因为UI阻止您将列命名回“名称”。
所以,要回答你的问题:不要这样做!
正如您所写,您已更改父内容类型的标题网站列的显示名称(我认为它是网站集的根网站上的项目内容类型)。当然这会对您的网站收藏产生影响。但是,改变内容类型(DisplayLink属性的FieldLink)的Title列的显示名称并不包含从其中继承的数十种其他内容类型(例如绑定到列表的内容类型),这通常很常见。您可以通过PowerShell中的$ web.SiteUserInfoList来评估隐藏的用户列表,并从代码中将其改回。 – pholpar 2017-05-26 08:12:18
这会重命名引用此字段或整个网站的特定内容类型的字段吗? +1。 – 2013-02-05 10:14:09