如何在列表上方显示SharePoint文件夹的元数据

时间:2010-07-05 20:06:42

标签: sharepoint directory

我在SharePoint 2007中创建了自己的内容类型,它基于文件夹类型。然后,我通过在文件夹标题中添加“描述”富文本字段来扩展它。

在导航文件夹层次结构时,我想在显示的自定义文件夹中的子项目/文件夹的列表/视图上方显示此“描述”。这可能吗?看起来应该很容易,但我有一段时间试图解决它。

我是否需要在SharePoint Designer中更改AllItems.aspx页面?如果是这样,我该添加什么?

杰克

[SharePoint noob]

2 个答案:

答案 0 :(得分:0)

老实说,在自定义这样的视图时,您需要查看数据视图webpart。这是一个基于XML / XSL的webpart,允许您指向各种SharePoint数据源,并使用XSL以任何方式呈现数据。 SharePoint设计器是此操作的首选工具。

这里的好概述

Clicky

希望这能让你开始, 问候, 沙恩

答案 1 :(得分:0)

想想我可能在这里回答了我自己的问题。

我使用WSPBuilder创建了一个自定义Web部件,然后我将其添加到List / View部件正上方的AllItems.aspx页面。该Web部件的代码是:

//Find the folder item for the current page.
String rootFolder = Page.Request.QueryString["RootFolder"];

if (!String.IsNullOrEmpty(rootFolder))
{

    SPWeb myWeb = SPContext.Current.Web;
    SPFolder folder = myWeb.GetFolder(rootFolder);

    if (folder.Exists && folder.Item.ContentType.Name.Equals("MyFolder"))
    {

        base.CreateChildControls();

        this.Style.Add(HtmlTextWriterStyle.Margin, "1em");

        SPField field = (SPField)folder.Item.Fields["Folder Description"];
        this.Controls.Add(new LiteralControl(field.GetFieldValueAsHtml(folder.Item["Folder Description"])));

    }
    else
    {
        this.Hidden = true;
    }
}
else
{
    this.Hidden = true;
}

正如您所看到的,我在列表中使用的文件夹基于名为“MyFolder”的自定义内容类型(基于“文件夹”内容类型),并在其上有一个名为“文件夹描述”的字段。现在,当我浏览列表的文件夹结构时,每个文件夹的描述都显示在视图上方。乌拉。

杰克

相关问题