MenuItem.Enabled プロパティ
アセンブリ: System.Web (system.web.dll 内)

/** @property */ public boolean get_Enabled () /** @property */ public void set_Enabled (boolean value)
メニュー項目が有効な場合は true。それ以外の場合は false。

このプロパティが false に設定されている場合、メニュー項目は無効で、子項目を示すポップアウト イメージは表示されません。メニュー項目に対してこのプロパティを false に設定すると、そのメニュー項目はノードの末尾に置かれ、そのノード以下のレベルは表示されません。既定値は true です。
メニュー項目の子項目を表示しても、メニュー項目そのものは "クリックできない" ようにするには、Selectable プロパティを false に設定します。

Enabled プロパティが false に設定されているメニュー項目をメニューに表示して機能させる方法のコード例を次に示します。
<%@ Page Language="C#" %> <html> <body> <form runat="server"> <h3>Menu Selectable and Enabled properties Example</h3> Note that Home, set to Selectable=false, is unselectable, but still shows all child items.<br /> Movies, set to Enabled=false, is unselectable, is greyed out, and does not show child items. <br /> <asp:menu id="NavigationMenu" staticdisplaylevels="1" staticsubmenuindent="10" orientation="Vertical" target="_blank" runat="server"> <dynamicmenustyle backcolor="LightSkyBlue" forecolor="Black" borderstyle="Solid" borderwidth="1" bordercolor="Black" /> <items> <asp:menuitem navigateurl="Home.aspx" text="Non-Selectable" tooltip="Non-Selectable" Selectable=false> <asp:menuitem navigateurl="Music.aspx" text="Music" tooltip="Music"> <asp:menuitem navigateurl="Classical.aspx" text="Classical" tooltip="Classical"/> <asp:menuitem navigateurl="Rock.aspx" text="Rock" tooltip="Rock"/> <asp:menuitem navigateurl="Jazz.aspx" text="Jazz" tooltip="Jazz"/> </asp:menuitem> <asp:menuitem navigateurl="Movies.aspx" text="Disabled" tooltip="Disabled" Enabled=false> <asp:menuitem navigateurl="Action.aspx" text="Action" tooltip="Action"/> <asp:menuitem navigateurl="Drama.aspx" text="Drama" tooltip="Drama"/> <asp:menuitem navigateurl="Musical.aspx" text="Musical" tooltip="Musical"/> </asp:menuitem> </asp:menuitem> </items> </asp:menu> </form> </body> </html>
<%@ Page Language="VB" %> <html> <body> <form runat="server"> <h3>Menu Selectable and Enabled properties Example</h3> Note that Home, set to Selectable=false, is unselectable, but still shows all child items.<br /> Movies, set to Enabled=false, is unselectable, is greyed out, and does not show child items. <br /> <asp:menu id="NavigationMenu" staticdisplaylevels="1" staticsubmenuindent="10" orientation="Vertical" target="_blank" runat="server"> <dynamicmenustyle backcolor="LightSkyBlue" forecolor="Black" borderstyle="Solid" borderwidth="1" bordercolor="Black" /> <items> <asp:menuitem navigateurl="Home.aspx" text="Non-Selectable" tooltip="Non-Selectable" Selectable=false> <asp:menuitem navigateurl="Music.aspx" text="Music" tooltip="Music"> <asp:menuitem navigateurl="Classical.aspx" text="Classical" tooltip="Classical"/> <asp:menuitem navigateurl="Rock.aspx" text="Rock" tooltip="Rock"/> <asp:menuitem navigateurl="Jazz.aspx" text="Jazz" tooltip="Jazz"/> </asp:menuitem> <asp:menuitem navigateurl="Movies.aspx" text="Disabled" tooltip="Disabled" Enabled=false> <asp:menuitem navigateurl="Action.aspx" text="Action" tooltip="Action"/> <asp:menuitem navigateurl="Drama.aspx" text="Drama" tooltip="Drama"/> <asp:menuitem navigateurl="Musical.aspx" text="Musical" tooltip="Musical"/> </asp:menuitem> </asp:menuitem> </items> </asp:menu> </form> </body> </html>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


MenuItem.Enabled プロパティ
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

/** @property */ public boolean get_Enabled () /** @property */ public void set_Enabled (boolean value)
メニュー項目が有効な場合は true。それ以外の場合は false。既定値は true です。


Popup イベントを使用して、切り取り、コピー、削除の操作をサポートする MenuItem オブジェクトが、メニューが表示される前に有効になるかどうかを判断する方法を次のコード例に示します。この例では、MenuItem オブジェクトが使用できるようになる前に、フォーム上の TextBox コントロールの textBox1 が使用可能で、入力フォーカスがあり、テキストが選択されているかどうかを判断します。ここでは、menuCut、menuCopy、および menuDelete という名前の 3 つの MenuItem オブジェクトが作成されている必要があります。
Private Sub PopupMyMenu(ByVal sender As Object, ByVal e As System.EventArgs) Handles menuEdit.Popup If textBox1.Enabled = False OrElse textBox1.Focused = False OrElse textBox1.SelectedText.Length = 0 Then menuCut.Enabled = False menuCopy.Enabled = False menuDelete.Enabled = False Else menuCut.Enabled = True menuCopy.Enabled = True menuDelete.Enabled = True End If End Sub
private void PopupMyMenu(object sender, System.EventArgs e) { if (textBox1.Enabled == false || textBox1.Focused == false || textBox1.SelectedText.Length == 0) { menuCut.Enabled = false; menuCopy.Enabled = false; menuDelete.Enabled = false; } else { menuCut.Enabled = true; menuCopy.Enabled = true; menuDelete.Enabled = true; } }
private: void PopupMyMenu( Object^ /*sender*/, System::EventArgs^ /*e*/ ) { if ( textBox1->Enabled == false || textBox1->Focused == false || textBox1->SelectedText->Length == 0 ) { menuCut->Enabled = false; menuCopy->Enabled = false; menuDelete->Enabled = false; } else { menuCut->Enabled = true; menuCopy->Enabled = true; menuDelete->Enabled = true; } }
private void PopupMyMenu(Object sender, System.EventArgs e) { if (textBox1.get_Enabled() == false || textBox1.get_Focused() == false || textBox1.get_SelectedText().get_Length() == 0) { menuCut.set_Enabled(false); menuCopy.set_Enabled(false); menuDelete.set_Enabled(false); } else { menuCut.set_Enabled(true); menuCopy.set_Enabled(true); menuDelete.set_Enabled(true); } } //PopupMyMenu

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- MenuItem.Enabledのページへのリンク