SharePoint 2013 树形导航菜单(非JS部分)
显示效果:
HTML 部分代码 Treview
<asp:TreeView ID="TreeView1" runat="server">
</asp:TreeView>
protected void Page_Load(object sender, EventArgs e)
{
dataBind();
}
protected void dataBind()
{
try
{
SPSite site = new SPSite(SPContext.Current.Site.ID);
SPWeb spWeb = site.OpenWeb();
SPList spList = spWeb.Lists["样式库"];
this.TreeView1.Nodes.Add(CreateNodeByList(spList));
spWeb.Dispose();
}
catch (Exception ex)
{
}
}
private TreeNode CreateNodeByList(SPList spList)
{
TreeNode node =new TreeNode();
node.Text = spList.Title;
node.Value = spList.RootFolder.Url;
foreach(SPFolder subFolder in spList.RootFolder.SubFolders)
{
if(subFolder.Name !="Forms")
{
node.ChildNodes.Add(CreateNodeByFolder(subFolder));
}
}
return node;
}
private TreeNode CreateNodeByFolder(SPFolder spFolder)
{
TreeNode node =new TreeNode();
node.Text = spFolder.Name;
node.NavigateUrl = SPContext.Current.Web.Lists["样式库"].DefaultViewUrl + "?RootFolder=" + spFolder.Url;
node.ImageUrl = SPControl.GetContextWeb(Context).Url+"/_layouts/images/folder.gif";
foreach(SPFolder subFolder in spFolder.SubFolders)
{
node.ChildNodes.Add(CreateNodeByFolder(subFolder));
}
return node;
}