Menu.MenuItemDataBound Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит, если пункт меню в элементе управления Menu привязан к данным.
public:
event System::Web::UI::WebControls::MenuEventHandler ^ MenuItemDataBound;
public event System.Web.UI.WebControls.MenuEventHandler MenuItemDataBound;
member this.MenuItemDataBound : System.Web.UI.WebControls.MenuEventHandler
Public Custom Event MenuItemDataBound As MenuEventHandler
Тип события
Примеры
В следующем примере кода показано, как создать обработчик событий для MenuItemDataBound события, который изменяет текст Home
пункта меню перед его отображением в элементе Menu управления .
<%@ 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 NavigationMenu_MenuItemDataBound(Object sender, MenuEventArgs e)
{
// Modify the text of the Home menu item by
// adding parenthesis around the text.
if (e.Item.Text == "Home")
{
e.Item.Text = "(" + e.Item.Text + ")";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Menu MenuItemDataBound Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Menu MenuItemDataBound Example</h3>
<asp:menu id="NavigationMenu"
staticdisplaylevels="2"
staticsubmenuindent="10"
orientation="Vertical"
target="_blank"
datasourceid="MenuSource"
onmenuitemdatabound="NavigationMenu_MenuItemDataBound"
runat="server">
</asp:menu>
<asp:SiteMapDataSource id="MenuSource"
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 NavigationMenu_MenuItemDataBound(ByVal sender As Object, ByVal e As MenuEventArgs)
' Modify the text of the Home menu item by
' adding parenthesis around the text.
If e.Item.Text = "Home" Then
e.Item.Text = "(" & e.Item.Text & ")"
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Menu MenuItemDataBound Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Menu MenuItemDataBound Example</h3>
<asp:menu id="NavigationMenu"
staticdisplaylevels="2"
staticsubmenuindent="10"
orientation="Vertical"
target="_blank"
datasourceid="MenuSource"
onmenuitemdatabound="NavigationMenu_MenuItemDataBound"
runat="server">
</asp:menu>
<asp:SiteMapDataSource id="MenuSource"
runat="server"/>
</form>
</body>
</html>
Комментарии
Событие MenuItemDataBound возникает, когда элемент меню привязан к данным в элементе Menu управления. Это позволяет предоставить обработчик событий, который выполняет настраиваемую подпрограмму, например добавление пользовательского содержимого или изменение пункта меню перед его отображением, при каждом возникновении этого события.
Объект MenuEventArgs передается обработчику событий, что позволяет получить доступ к свойствам пункта меню, вызвавского событие.
Дополнительные сведения об обработке событий см. в разделе Обработка и создание событий.