代码之家  ›  专栏  ›  技术社区  ›  Ryan Eastabrook

SharePoint默认列表项详细信息视图

  •  3
  • Ryan Eastabrook  · 技术社区  · 16 年前

    我有一个以指定格式呈现随机列表项(来自任何列表和列表类型)的Web部件。我希望在Web部件中显示的项目链接到其ListItem详细视图。但是,我在列表本身没有看到一个属性可以告诉我什么视图是列表的默认详细视图(即blog list detail是post.aspx)。这是来自列表定义吗?我如何以编程方式获取这些信息?我试图避免根据列表类型对任何列表信息进行硬编码。

    1 回复  |  直到 14 年前
        1
  •  6
  •   Lloyd Cotten    16 年前

    看一看 SPList.Forms[PAGETYPE.PAGE_DISPLAYFORM].Url .

    我想这就是你要找的。您需要在querystring上附加splistem.id,以便它知道要显示哪个列表项。

    using (SPWeb myWeb = GetMyWeb()) // GetMyWeb gets a reference to a SPWeb object
    {
        SPList myList = GetMyList(myWeb); // GetMyList gets a reference to a SPList object
        SPListItem myItem = GetMyListItem(myList); // GetMyListItem gets a reference to a SPListItem object
        string url = String.Format("{0}/{1}?ID={2}",
            myWeb.Url,
            myList.Forms[PAGETYPE.PAGE_DISPLAYFORM].Url, 
            myItem.ID);
    }
    

    附加也是一个很好的实践 &Source=/url/to/current/page 到querystring,这样当用户单击编辑或显示表单上的取消/关闭按钮时,他们将被重定向回他们离开的页面。