ASP.NET 2.0构建动态导航的Web应用程序(TreeView和Menu ) (海东的技术资料)
2016-01-24 15:26
711 查看
TreeView 控件关键属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CheckedNodes 声明被选择的单个或者多个节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ExpandDepth 声明TreeView控件展开的深度
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Nodes TreeNodeCollection 类型的节点集合
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectedNode 当前被选择的节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowCheckBoxes 声明是否显示复选框
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowExpandCollapse 声明展示/折叠状态
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowLines 声明节点间是否以线连接
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
LevelStyles 指定每个层次的节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NodeStyle 指定节点的默认样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
RootNodeStyle 指定根节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
LeafNodeStyle 指定子节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectedNodeStyle 指定选定节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
HoverNodeStyle 指定当鼠标移在节点上方时的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ImageUrl properties 指定表示展开/折叠的图片的URL路径
TreeNode关键属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Checked 标明节点上的复选框的选择状态
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ImageUrl 标明节点上所用图片的URL路径
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NavigateUrl 当单击节点时所要导航到的URL路径
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectAction 无导航节点被单击时所要执行的动作
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Selected 标明当前节点是否被选择的节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowCheckBox 标明当前节点是否显示复选框
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Text 节点上的文字
TreeView 事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CheckChanged 当复选框被选择或者清除选择时的所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectedNodeChanged 当选择的节点发生改变时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
TreeNodeCollapsed 当分支被折叠时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
TreeNodeExpanded 当分支被展开时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
TreeNodeDataBound 当节点被绑定到数据源时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
TreeNodePopulate* Fired when a PopulateOnDemand node needs content
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
* Only fired on server if EnableClientScript="false"
使用 SelectedNodeChanged事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeView ID="Tree" OnSelectedNodeChanged="OnUpdate" RunAt="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<Nodes>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</Nodes>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</asp:TreeView>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/eb0de748a618dd87d3b49c4cb26875ea.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/922c24747e8135bbd9b9faec8546bb35.gif)
<script language="C#" runat="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
void OnUpdate (Object sender, EventArgs e)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c7908d515916470020c44a428d121a18.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/4cd0593924707d4a821ac716a3c32e0a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
{
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
// Get the text of the selected node
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
string text = Tree.SelectedNode.Text;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c2edccbdfb36cdbb7be89fd636d505c7.gif)
}
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</script>
按需装载节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeView OnTreeNodePopulate="OnPopulate" EnableClientScript="false"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
RunAt="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<Nodes>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeNode Text="Populate this node on demand"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
PopulateOnDemand="true" RunAt="server" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</Nodes>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</asp:TreeView>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/eb0de748a618dd87d3b49c4cb26875ea.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/922c24747e8135bbd9b9faec8546bb35.gif)
<script language="C#" runat="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
void OnPopulate (Object sender, TreeNodeEventArgs e)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c7908d515916470020c44a428d121a18.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/4cd0593924707d4a821ac716a3c32e0a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
{
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
// Called first time the populate-on-demand node is expanded
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
TreeNode node = new TreeNode ("This node added dynamically");
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
e.Node.ChildNodes.Add (node);
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c2edccbdfb36cdbb7be89fd636d505c7.gif)
}
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</script>
Menu 控件关键属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Items MenuItemCollection 类型的菜单项的集合
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ItemWrap Specifies whether menu item should wrap
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Orientation 标明菜单是纵向排列还是横向排列
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectedItem 标明当前选择的菜单项
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StaticStyle properties 标明静态菜单的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
DynamicStyle properties 标明动态菜单的样式
MenuItem 控件关键属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ImageUrl 菜单项上所显示图片的URL路径
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NavigateUrl 当菜单项单击时所要导航的目标路径
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Selected 标明当前菜单项是否已经被选中
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Text 菜单项上的文字 (显示给最终用户)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ToolTip 当光标暂停或者移过菜单项时所显示的提示文本
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Value 菜单项的实际值
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Menu事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
MenuItemClick 当菜单项被单击时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
MenuItemDataBound 当菜单项被绑定到数据源时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
使用 MenuItemClick事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:Menu
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
OnMenuItemClick="OnClick" RunAt="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<Items>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</Items>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</asp:Menu>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/eb0de748a618dd87d3b49c4cb26875ea.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/922c24747e8135bbd9b9faec8546bb35.gif)
<script language="C#" runat="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
void OnClick (Object sender, MenuEventArgs e)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c7908d515916470020c44a428d121a18.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/4cd0593924707d4a821ac716a3c32e0a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
{
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
// Get the text of the selected menu item
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
string text = e.Item.Text;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c2edccbdfb36cdbb7be89fd636d505c7.gif)
}
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</script>
TreeView控件和 Site Maps 关系
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:SiteMapDataSource ID="SiteMap" RunAt="server" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeView DataSourceID="SiteMap" RunAt="server" />
Menus控件和 Site Maps 关系
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:SiteMapDataSource ID="SiteMap" RunAt="server" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:Menu DataSourceID="SiteMap" RunAt="server" />
在配置文件中修改文件名
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<configuration>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<system.web>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<providers>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<remove name="AspNetXmlSiteMapProvider" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<add name="AspNetXmlSiteMapProvider"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
type="System.Web.XmlSiteMapProvider, System.Web,
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
siteMapFile="Acme.sitemap" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</providers>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</system.web>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</configuration>
<siteMapNode> 属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
description 节点的描述信息
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
roles 指定当前项对哪些角色是可见的*
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
title 当前项的标题
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
url 当前项导航的目标路径
Security Trimming
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMapNode title="Home" description="" url="default.aspx">
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMapNode title="Announcements" url="Announcements.aspx"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
description="Information for all employees" /> 任何人均可见
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMapNode title="Salaries" url="Salaries.aspx"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
description="Salary data" roles="Managers,CEOs" /> 只有Manager
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
和CEO权限的可见
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMapNode>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</siteMap>
使 Security Trimming生效
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<configuration>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<system.web>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<providers>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<remove name="AspNetXmlSiteMapProvider" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<add name="AspNetXmlSiteMapProvider"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
type="System.Web.XmlSiteMapProvider, System.Web,
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
securityTrimmingEnabled="true"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
siteMapFile="web.sitemap" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</providers>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</system.web>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</configuration>
SiteMapDataSource属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Provider 用来获得站点导航数据的Provider
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SiteMapProvider 用来获得站点导航数据的Provider的名称
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowStartingNode 指定显示为根节点的项
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StartFromCurrentNode 指定开始节点是否是根节点(false)或者是当前节点(true)默认 = false
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StartingNodeOffset 使用层次来指定开始节点 (default = 0)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StartingNodeUrl 使用URL来指定开始节点
隐藏Site Map根节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:SiteMapDataSource ID="SiteMap" ShowStartingNode="false"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
RunAt="server" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeView DataSourceID="SiteMap" RunAt="server" />
SiteMapPath控件关键属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CurrentNodeStyle 当前节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CurrentNodeTemplate 当前节点的HTML模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NodeStyle 非当前节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NodeStyleTemplate 非当前节点的HTML模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
PathSeparator 分隔符所使用的文字 (默认 = ">")
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
PathSeparatorStyle 分隔符的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
PathSeparatorTemplate 分隔符所使用的HTML模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
RootNode 属性用来鉴别根节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CurrentNode 属性用来鉴别当前节点
使用 Site Map API
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
// Write the title of the current node to a Label control
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Label1.Text = SiteMap.CurrentNode.Title;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
// Write the path to the current node to a Label control
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SiteMapNode node = SiteMap.CurrentNode;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StringBuilder builder = new StringBuilder (node.Title);
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/eb0de748a618dd87d3b49c4cb26875ea.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/922c24747e8135bbd9b9faec8546bb35.gif)
while (node.ParentNode != null)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
{
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
node = node.ParentNode;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
builder.Insert (0, " > ");
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
builder.Insert (0, node.Title);
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c2edccbdfb36cdbb7be89fd636d505c7.gif)
}
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Label1.Text = builder.ToString ();
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CheckedNodes 声明被选择的单个或者多个节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ExpandDepth 声明TreeView控件展开的深度
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Nodes TreeNodeCollection 类型的节点集合
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectedNode 当前被选择的节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowCheckBoxes 声明是否显示复选框
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowExpandCollapse 声明展示/折叠状态
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowLines 声明节点间是否以线连接
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
LevelStyles 指定每个层次的节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NodeStyle 指定节点的默认样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
RootNodeStyle 指定根节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
LeafNodeStyle 指定子节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectedNodeStyle 指定选定节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
HoverNodeStyle 指定当鼠标移在节点上方时的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ImageUrl properties 指定表示展开/折叠的图片的URL路径
TreeNode关键属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Checked 标明节点上的复选框的选择状态
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ImageUrl 标明节点上所用图片的URL路径
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NavigateUrl 当单击节点时所要导航到的URL路径
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectAction 无导航节点被单击时所要执行的动作
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Selected 标明当前节点是否被选择的节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowCheckBox 标明当前节点是否显示复选框
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Text 节点上的文字
TreeView 事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CheckChanged 当复选框被选择或者清除选择时的所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectedNodeChanged 当选择的节点发生改变时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
TreeNodeCollapsed 当分支被折叠时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
TreeNodeExpanded 当分支被展开时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
TreeNodeDataBound 当节点被绑定到数据源时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
TreeNodePopulate* Fired when a PopulateOnDemand node needs content
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
* Only fired on server if EnableClientScript="false"
使用 SelectedNodeChanged事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeView ID="Tree" OnSelectedNodeChanged="OnUpdate" RunAt="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<Nodes>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</Nodes>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</asp:TreeView>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/eb0de748a618dd87d3b49c4cb26875ea.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/922c24747e8135bbd9b9faec8546bb35.gif)
<script language="C#" runat="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
void OnUpdate (Object sender, EventArgs e)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c7908d515916470020c44a428d121a18.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/4cd0593924707d4a821ac716a3c32e0a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
{
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
// Get the text of the selected node
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
string text = Tree.SelectedNode.Text;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c2edccbdfb36cdbb7be89fd636d505c7.gif)
}
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</script>
按需装载节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeView OnTreeNodePopulate="OnPopulate" EnableClientScript="false"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
RunAt="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<Nodes>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeNode Text="Populate this node on demand"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
PopulateOnDemand="true" RunAt="server" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</Nodes>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</asp:TreeView>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/eb0de748a618dd87d3b49c4cb26875ea.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/922c24747e8135bbd9b9faec8546bb35.gif)
<script language="C#" runat="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
void OnPopulate (Object sender, TreeNodeEventArgs e)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c7908d515916470020c44a428d121a18.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/4cd0593924707d4a821ac716a3c32e0a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
{
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
// Called first time the populate-on-demand node is expanded
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
TreeNode node = new TreeNode ("This node added dynamically");
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
e.Node.ChildNodes.Add (node);
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c2edccbdfb36cdbb7be89fd636d505c7.gif)
}
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</script>
Menu 控件关键属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Items MenuItemCollection 类型的菜单项的集合
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ItemWrap Specifies whether menu item should wrap
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Orientation 标明菜单是纵向排列还是横向排列
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SelectedItem 标明当前选择的菜单项
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StaticStyle properties 标明静态菜单的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
DynamicStyle properties 标明动态菜单的样式
MenuItem 控件关键属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ImageUrl 菜单项上所显示图片的URL路径
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NavigateUrl 当菜单项单击时所要导航的目标路径
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Selected 标明当前菜单项是否已经被选中
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Text 菜单项上的文字 (显示给最终用户)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ToolTip 当光标暂停或者移过菜单项时所显示的提示文本
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Value 菜单项的实际值
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Menu事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
MenuItemClick 当菜单项被单击时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
MenuItemDataBound 当菜单项被绑定到数据源时所触发的事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
使用 MenuItemClick事件
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:Menu
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
OnMenuItemClick="OnClick" RunAt="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<Items>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</Items>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</asp:Menu>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
.
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/eb0de748a618dd87d3b49c4cb26875ea.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/922c24747e8135bbd9b9faec8546bb35.gif)
<script language="C#" runat="server">
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
void OnClick (Object sender, MenuEventArgs e)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c7908d515916470020c44a428d121a18.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/4cd0593924707d4a821ac716a3c32e0a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
{
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
// Get the text of the selected menu item
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
string text = e.Item.Text;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c2edccbdfb36cdbb7be89fd636d505c7.gif)
}
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</script>
TreeView控件和 Site Maps 关系
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:SiteMapDataSource ID="SiteMap" RunAt="server" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeView DataSourceID="SiteMap" RunAt="server" />
Menus控件和 Site Maps 关系
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:SiteMapDataSource ID="SiteMap" RunAt="server" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:Menu DataSourceID="SiteMap" RunAt="server" />
在配置文件中修改文件名
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<configuration>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<system.web>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<providers>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<remove name="AspNetXmlSiteMapProvider" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<add name="AspNetXmlSiteMapProvider"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
type="System.Web.XmlSiteMapProvider, System.Web,
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
siteMapFile="Acme.sitemap" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</providers>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</system.web>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</configuration>
<siteMapNode> 属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
description 节点的描述信息
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
roles 指定当前项对哪些角色是可见的*
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
title 当前项的标题
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
url 当前项导航的目标路径
Security Trimming
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMapNode title="Home" description="" url="default.aspx">
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMapNode title="Announcements" url="Announcements.aspx"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
description="Information for all employees" /> 任何人均可见
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMapNode title="Salaries" url="Salaries.aspx"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
description="Salary data" roles="Managers,CEOs" /> 只有Manager
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
和CEO权限的可见
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMapNode>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</siteMap>
使 Security Trimming生效
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<configuration>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<system.web>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<providers>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<remove name="AspNetXmlSiteMapProvider" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<add name="AspNetXmlSiteMapProvider"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
type="System.Web.XmlSiteMapProvider, System.Web,
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
securityTrimmingEnabled="true"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
siteMapFile="web.sitemap" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</providers>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</siteMap>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</system.web>
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
</configuration>
SiteMapDataSource属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Provider 用来获得站点导航数据的Provider
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SiteMapProvider 用来获得站点导航数据的Provider的名称
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
ShowStartingNode 指定显示为根节点的项
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StartFromCurrentNode 指定开始节点是否是根节点(false)或者是当前节点(true)默认 = false
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StartingNodeOffset 使用层次来指定开始节点 (default = 0)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StartingNodeUrl 使用URL来指定开始节点
隐藏Site Map根节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:SiteMapDataSource ID="SiteMap" ShowStartingNode="false"
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
RunAt="server" />
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
<asp:TreeView DataSourceID="SiteMap" RunAt="server" />
SiteMapPath控件关键属性
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CurrentNodeStyle 当前节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CurrentNodeTemplate 当前节点的HTML模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NodeStyle 非当前节点的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
NodeStyleTemplate 非当前节点的HTML模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
PathSeparator 分隔符所使用的文字 (默认 = ">")
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
PathSeparatorStyle 分隔符的样式
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
PathSeparatorTemplate 分隔符所使用的HTML模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
RootNode 属性用来鉴别根节点
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
CurrentNode 属性用来鉴别当前节点
使用 Site Map API
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
// Write the title of the current node to a Label control
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Label1.Text = SiteMap.CurrentNode.Title;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
// Write the path to the current node to a Label control
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
SiteMapNode node = SiteMap.CurrentNode;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
StringBuilder builder = new StringBuilder (node.Title);
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/eb0de748a618dd87d3b49c4cb26875ea.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/922c24747e8135bbd9b9faec8546bb35.gif)
while (node.ParentNode != null)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030194/b854634c0904529d4018c4c3336be836.gif)
{
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
node = node.ParentNode;
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
builder.Insert (0, " > ");
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/e4a3ae5f672f94f058bd725357f1368a.gif)
builder.Insert (0, node.Title);
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/c2edccbdfb36cdbb7be89fd636d505c7.gif)
}
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/200804/35d7faa8060b984f7bcfafab42969971.gif)
Label1.Text = builder.ToString ();
相关文章推荐
- [翻译]使用ASP.NET AJAX让GridView的数据行显示提示框(ToolTip)
- ASP.Net新手项目经验谈
- ASP.NET AJAX官方资源大量更新
- 提高 ASP.NET Web 应用性能的 24 种方法和技巧
- RaspberryPi和Arduino温室恒温改进
- WebUploader asp.net 多文件上传
- .NET Core 1.0、ASP.NET Core 1.0和EF Core 1.0简介
- metasploit 渗透测试笔记(基础篇)
- metasploit渗透测试笔记(内网渗透篇)
- metasploit 渗透测试笔记(基础篇)
- metasploit渗透测试笔记(内网渗透篇)
- Metasploit渗透技巧:后渗透Meterpreter代理
- Metaspliot进行漏洞扫描
- Metasploit渗透技巧:后渗透Meterpreter代理
- [TOP10]最受欢迎的10个Metasploit模块和插件
- Metasploit渗透技巧:后渗透Meterpreter代理
- [TOP10]最受欢迎的10个Metasploit模块和插件
- Metasploit渗透技巧:后渗透Meterpreter代理
- 玩转Metasploit系列(第一集)
- 玩转Metasploit系列(第一集)