• 如何在WebPart中访问页面上的其他WebPart(转)


    今天在和朋友讨论一个老外写的WebPart的时候,发现那个WebPart获取页面上的其他WebPart信息时,并不是通过标准的WebPart Connection,而是直接用代码来得到页面上另外那个WebPart的实例对象,然后通过获得此WebPart对象属性的值,来获得所需信息的。

    SharePoint的Object Model其实提供了很完整的方法,让我们的代码可以直接获取任何页面上的所有WebPart的信息,所以在这里向大家简要介绍一下如何通过代码来访问页面上的WebPart。

    示范代码如下:

    SPWeb web = SPControl.GetContextWeb(this.Context);

    SPWebPartCollection webParts = web.GetWebPartCollection(“default.aspx”, Storage.Shared);

    上面的两行代码,就获得了“default.aspx”这个页面上的所有WebPart集合。SPWebPartCollection这个对象拥有例如“Add()”、“Delete()”等方法,能够让我们直接用代码把WebPart添加到页面上,或者从页面上把WebPart删除。

    foreach (WebPart wp in webParts)

    {

        String sTitle = wp.Title;

    }

    上面的代码遍历所有的WebPart,每一个WebPart都是一个类型为“WebPart”(不是SPWebPart哦,呵呵)的对象,然后,通过访问这个对象的属性值,就能轻松获取某个WebPart的信息了。我们还能在代码中直接修改某个WebPart的属性值,但是修改以后,记得调用SPWebPartCollection对象的SaveChanges()方法,把修改的内容保存下来。

    下面的图片是我做的一个Demo WebPart,在填入一个页面的URL后,它能够把此页面上所有的WebPart列出来,并显示选中的WebPart的所有属性。

  • 相关阅读:
    babel的使用及安装配置
    npm install卡顿问题
    盒模型
    安全性
    字符串方法
    vue
    CSS3
    重载运算符
    装箱拆箱
    模板库
  • 原文地址:https://www.cnblogs.com/liubinurl/p/2478726.html
Copyright © 2020-2023  润新知