MenuItemBindingCollection.Remove(MenuItemBinding) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Удаляет указанный объект MenuItemBinding из коллекции.
public:
void Remove(System::Web::UI::WebControls::MenuItemBinding ^ binding);
public void Remove (System.Web.UI.WebControls.MenuItemBinding binding);
member this.Remove : System.Web.UI.WebControls.MenuItemBinding -> unit
Public Sub Remove (binding As MenuItemBinding)
Параметры
- binding
- MenuItemBinding
Объект MenuItemBinding, который требуется удалить из коллекции.
Примеры
В следующем примере кода показано, как использовать Remove метод для удаления 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)
{
// Create the menu item bindings for the Menu control.
MenuItemBinding binding;
binding = CreateMenuItemBinding("MapHomeNode", 0, "title", "url");
NavigationMenu.DataBindings.Add(binding);
binding = CreateMenuItemBinding("MapNode", 1, "title", "url");
NavigationMenu.DataBindings.Add(binding);
binding = CreateMenuItemBinding("MapNode", 2, "title", "url");
NavigationMenu.DataBindings.Add(binding);
// Use the Remove method to remove the last MenuItemBinding
// object.
NavigationMenu.DataBindings.Remove(binding);
}
}
// This is a helper method to create a MenuItemBinding
// object from the specified parameters.
MenuItemBinding CreateMenuItemBinding(String dataMember, int depth, String textField, String navigateUrlField)
{
// Create a new MenuItemBinding object.
MenuItemBinding binding = new MenuItemBinding();
// Set the properties of the MenuItemBinding object.
binding.DataMember = dataMember;
binding.Depth = depth;
binding.TextField = textField;
binding.NavigateUrlField = navigateUrlField;
return binding;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>MenuItemBindingCollection Remove Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemBindingCollection Remove 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
' Create the menu item bindings for the Menu control.
Dim binding As MenuItemBinding
binding = CreateMenuItemBinding("MapHomeNode", 0, "title", "url")
NavigationMenu.DataBindings.Add(binding)
binding = CreateMenuItemBinding("MapNode", 1, "title", "url")
NavigationMenu.DataBindings.Add(binding)
binding = CreateMenuItemBinding("MapNode", 2, "title", "url")
NavigationMenu.DataBindings.Add(binding)
' Use the Remove method to remove the MenuItemBinding
' object.
NavigationMenu.DataBindings.Remove(binding)
End If
End Sub
' This is a helper method to create a MenuItemBinding
' object from the specified parameters.
Function CreateMenuItemBinding(ByVal dataMember As String, ByVal depth As Integer, ByVal textField As String, ByVal navigateUrlField As String) As MenuItemBinding
' Create a new MenuItemBinding object.
Dim binding As New MenuItemBinding()
' Set the properties of the MenuItemBinding object.
binding.DataMember = dataMember
binding.Depth = depth
binding.TextField = textField
binding.NavigateUrlField = navigateUrlField
Return binding
End Function
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>MenuItemBindingCollection Remove Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemBindingCollection Remove 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>
Комментарии
Используйте метод , Remove чтобы удалить из коллекции привязку указанного элемента меню. Все элементы, следующие за этим пунктом меню, затем перемещаются вверх, чтобы заполнить вакантную позицию. Индексы перемещенных элементов также обновляются.
Примечание
Коллекция может содержать значения NULL, а также повторяющиеся MenuItemBinding объекты.
В качестве альтернативы можно удалить пункт меню из определенного индекса в коллекции с помощью RemoveAt метода . Вы также можете удалить все пункты меню из коллекции с помощью Clear метода .
Примечание
Порядок, в котором MenuItemBinding объекты отображаются в коллекции, не влияет на то, как эти объекты применяются к элементам меню в элементе Menu управления .