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

Sharepoint默认列表项详细信息视图,sharepoint,web-parts,Sharepoint,Web Parts,我有一个Web部件,它以指定的格式呈现随机列表项(来自任何列表和列表类型)。我希望Web部件中显示的项目链接到其ListItem详细视图。但是,我在列表本身上没有看到一个属性可以告诉我什么视图是列表的默认详细视图(即blog list DETAIL是Post.aspx)。这是否来自列表定义?我如何以编程方式获取这些信息?我试图避免根据列表类型对任何列表信息进行硬编码。请查看SPList.Forms[PAGETYPE.PAGE\u DISPLAYFORM].Url 我想这就是你要找的。您需要在qu

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

请查看
SPList.Forms[PAGETYPE.PAGE\u DISPLAYFORM].Url

我想这就是你要找的。您需要在querystring上附加SPListItem.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
附加到查询字符串中也是一种很好的做法,这样当用户单击编辑或显示表单上的“取消/关闭”按钮时,将重定向回他们离开的页面