0

因此,我需要根据项目的创建者在 Sharepoint 自定义列表中隐藏一个字段。我已经完成了此处概述的步骤,它非常适合根据权限级别隐藏字段。但是,如果用户具有一定的权限级别或者是在列表中创建项目的用户,我需要能够显示该字段。

尽管这些字段都列在 DataViewSource 中,但如果我查看返回以呈现的 XML,它包括除上述四个之外的所有字段。甚至 Sharepoint Designer 也认为它应该可以工作,因为它基于 GUI 中的“由 Equals [当前用户] 创建”创建了以下条件渲染:

@Author = $UserID

然而@Author 字段并不存在。我想我可以将列表设置为仅显示当前用户创建的项目,但在这种情况下,用户查看其他人的项目会很有帮助。另一个“很高兴”是在创建日期之间经过一定时间后不显示该字段,这再次意味着我需要能够与“已创建”字段进行比较。

这是设计使然还是我遗漏了什么?

4

1 回答 1

0

虽然我不确定这些字段被隐藏的原因,或者这个解决方案是否会导致其他问题。但是,如果您将 DataSourceMode 从“ListItem”更改为“List”,如下例所示,字段 @Created 现在可用。

<DataSources>
    <SharePoint:SPDataSource runat="server" DataSourceMode="List" UseInternalName="true" selectcommand="&lt;View&gt;&lt;Query/&gt;....."></SharePoint:SPDataSource>
</DataSources>

SharePoint 的奇妙之处及其精美的设计工具。

于 2010-04-22T22:14:12.067 回答