MenuItemBindingCollection.RemoveAt(Int32) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
从集合中移除位于指定索引位置的 MenuItemBinding 对象。
public:
void RemoveAt(int index);
public void RemoveAt (int index);
member this.RemoveAt : int -> unit
Public Sub RemoveAt (index As Integer)
参数
- index
- Int32
要移除的菜单项绑定的索引位置(索引从零开始)。
示例
下面的代码示例演示如何使用 RemoveAt 该方法从特定索引处的集合中删除 MenuItemBinding 对象。 若要使此示例正常工作,必须将下面的示例 XML 数据复制到名为Map.xml的文件。
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
if(!IsPostBack)
{
// Use the RemoveAt method to remove the
// MenuItemBinding object at index 3 from
// the Bindings collection.
NavigationMenu.DataBindings.RemoveAt(3);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>MenuItemBindingCollection RemoveAt Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemBindingCollection RemoveAt Example</h3>
<asp:menu id="NavigationMenu"
staticdisplaylevels="2"
staticsubmenuindent="10"
orientation="Vertical"
target="_blank"
datasourceid="MenuSource"
runat="server">
<databindings>
<asp:menuitembinding datamember="MapHomeNode"
depth="0"
textfield="title"
navigateurlfield="url"/>
<asp:menuitembinding datamember="MapNode"
depth="1"
textfield="title"
navigateurlfield="url"/>
<asp:menuitembinding datamember="MapNode"
depth="2"
textfield="title"
navigateurlfield="url"/>
<asp:menuitembinding datamember="ExtraMapNode"
depth="3"
textfield="title"
navigateurlfield="url"/>
</databindings>
</asp:menu>
<asp:xmldatasource id="MenuSource"
datafile="Map.xml"
runat="server"/>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not IsPostBack Then
' Use the RemoveAt method to remove the
' MenuItemBinding object at index 3 from
' the Bindings collection.
NavigationMenu.DataBindings.RemoveAt(3)
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>MenuItemBindingCollection RemoveAt Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemBindingCollection RemoveAt Example</h3>
<asp:menu id="NavigationMenu"
staticdisplaylevels="2"
staticsubmenuindent="10"
orientation="Vertical"
target="_blank"
datasourceid="MenuSource"
runat="server">
<databindings>
<asp:menuitembinding datamember="MapHomeNode"
depth="0"
textfield="title"
navigateurlfield="url"/>
<asp:menuitembinding datamember="MapNode"
depth="1"
textfield="title"
navigateurlfield="url"/>
<asp:menuitembinding datamember="MapNode"
depth="2"
textfield="title"
navigateurlfield="url"/>
<asp:menuitembinding datamember="ExtraMapNode"
depth="3"
textfield="title"
navigateurlfield="url"/>
</databindings>
</asp:menu>
<asp:xmldatasource id="MenuSource"
datafile="Map.xml"
runat="server"/>
</form>
</body>
</html>
下面是上一示例的示例站点地图数据。
<MapHomeNode url="~\Home.aspx"
title="Home"
description="Home">
<MapNode url="~\Music.aspx"
title="Music"
description="Music">
<MapNode url="~\Classical.aspx"
title="Classical"
description="Classical"/>
<MapNode url="~\Rock.aspx"
title="Rock"
description="Rock"/>
<MapNode url="~\Jazz.aspx"
title="Jazz"
description="Jazz"/>
</MapNode>
<MapNode url="~\Movies.aspx"
title="Movies"
description="Movies">
<MapNode url="~\Action.aspx"
title="Action"
description="Action"/>
<MapNode url="~\Drama.aspx"
title="Drama"
description="Drama"/>
<MapNode url="~\Musical.aspx"
title="Musical"
description="Musical"/>
</MapNode>
</MapHomeNode>
注解
使用该方法 RemoveAt 从集合中移除 MenuItemBinding 位于指定索引位置的对象。 然后,在该菜单项后面的所有项上移,以填充空置位置。 移动项的索引也会更新。
备注
集合可以包含 null 值,以及重复 MenuItemBinding 的对象。
或者,可以使用该方法Remove删除特定MenuItemBinding对象。 还可以使用 Clear 该方法从集合中删除所有菜单项。