【问题标题】:SharePoint 2010 Listview save eventSharePoint 2010 列表视图保存事件
【发布时间】:2012-06-05 15:31:00
【问题描述】:

我试图捕捉列表视图上的保存事件,而不是列表本身。这样我就可以停止保存某些视图。

我尝试了 List SPListEventReciever,但这似乎只捕获列表本身的事件,而不是视图。

编辑:正如下面评论中提到的,我试图阻止人们保存的视图是外部列表上的默认视图。

【问题讨论】:

  • 您能否详细说明您想要阻止哪些视图?简短的回答是否定的,没有可以拦截的此类事件,但如果您向我们提供更多详细信息,我们可能会提出替代解决方案。
  • 特定视图是标记为快速启动的外部列表上的默认视图(公共)。到目前为止的所有证据都表明这是不可能的,但我想我可能会在放弃之前给 SO 一个机会。
  • 哦,所以您希望人们能够创建自己的视图,但不能更改现有的默认视图?
  • 宾果游戏!我们非常希望将默认视图作为模板,并让用户创建自己的公共视图以进行共享
  • 用户是否需要能够修改列表(添加/删除列等)?如果不是...我认为如果您删除此权限,他们仍然可以创建 个人 视图。然后,您可以创建一个自定义操作,让他们选择个人视图,然后在提升的权限下创建该视图的副本,该副本是公开的,而不是个人的。会这样吗?

标签: c# sharepoint-2010 splist spview


【解决方案1】:

在你的情况下,我会尝试以下方法:

  • 完全删除普通用户修改列表的权限(如果可以接受)。这仍然应该让他们创建个人视图。
  • 编写将采用个人视图、分析它、(删除它?)和(使用提升的权限)创建等效公共视图的代码。 (遗憾的是,您不能只更改PersonalView 属性。)小心捕捉用户在create-a-view UI 上可以执行的所有操作——这将是最棘手的部分。
    • (可选)编写类似代码以允许将视图从公共切换回个人(检查它不是默认视图或您要保护的任何其他视图。)
    • 可以选择跟踪谁“拥有”这些自定义视图之一,例如在隐藏列表中,并且只允许所有者将视图恢复为个人视图。
  • 为此代码编写一个接口,例如允许用户从相关视图或功能区上的自定义操作中进行选择的应用程序页面。

【讨论】:

    猜你喜欢
    • 2012-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多