发布了关于同一主题的类似问题,但我正在添加问题并且之前的讨论已解决。
这是原始问题的链接: SharePoint 列表中的自动编号列
我现在试图找出在 MOSS SharePoint 2007 的自定义列表中是否有一个名为“ID(链接到项目)”的列。
我知道在 SharePoint 中创建问题列表时,视图中默认包含一个“问题 ID(链接到项目)”字段,但是,我无法确定自定义列表是否存在类似字段。
发布了关于同一主题的类似问题,但我正在添加问题并且之前的讨论已解决。
这是原始问题的链接: SharePoint 列表中的自动编号列
我现在试图找出在 MOSS SharePoint 2007 的自定义列表中是否有一个名为“ID(链接到项目)”的列。
我知道在 SharePoint 中创建问题列表时,视图中默认包含一个“问题 ID(链接到项目)”字段,但是,我无法确定自定义列表是否存在类似字段。
答案是否定的……但您可以创建一个。
使用SharePoint 管理器(它会摇晃)打开一个网站,您可以看到“IssueID”列的定义以及用于显示“ID(链接到项目)”的定义我在下面包含了我网站中的架构 xml
<?xml version="1.0" encoding="utf-16"?>
<Field ID="{de57307b-e69a-4cf9-b3a9-b6a728ecf773}" Sealed="TRUE" ReadOnly="TRUE" Name="IssueID" Type="Computed" DisplayName="Issue ID" SourceID="http://schemas.microsoft.com/sharepoint/v3" StaticName="IssueID" FromBaseType="TRUE">
<FieldRefs>
<FieldRef Name="ID" />
</FieldRefs>
<DisplayPattern>
<Column Name="ID" />
</DisplayPattern>
</Field>
<?xml version="1.0" encoding="utf-16"?>
<Field ID="{03f89857-27c9-4b58-aaab-620647deda9b}" ReadOnly="TRUE" Type="Computed" Name="LinkIssueIDNoMenu" DisplayName="Issue ID" Dir="" DisplayNameSrcField="IssueID" AuthoringInfo="(linked to item)" SourceID="http://schemas.microsoft.com/sharepoint/v3" StaticName="LinkIssueIDNoMenu">
<FieldRefs>
<FieldRef Name="ID" />
</FieldRefs>
<DisplayPattern>
<HTML><![CDATA[<a href="]]></HTML>
<URL />
<HTML><![CDATA[" ONCLICK="GoToLink(this);return false;" target="_self">]]></HTML>
<Column HTMLEncode="TRUE" Name="ID" />
<HTML><![CDATA[</a>]]></HTML>
</DisplayPattern>
</Field>
更改 GUID,您可以将这些列添加到自定义列表中,它们将以您需要的方式显示。我建议为列创建一个功能(可能使用STSDev)并通过解决方案发布到开发站点以外的任何东西。
您可以使用 SharePoint Designer 将列表视图转换为数据视图 WebPart。从那里您可以完全控制用于视图呈现的 XSL,这将使您可以轻松地从任何或所有字段链接到项目。
有一个可用的 powershell 脚本,您可以使用它来为字段添加上下文菜单。
使用 POWERSHELL 将共享点列表项的上下文菜单添加到任何列
PS> & .\AddMenuColumn.ps1 -webUrl http://[server:port]/site/subsite/ -listName "Test" -fieldTitle "justAnyColumn" -addToDefaultView $true