MenuItem.Enabled プロパティ
メニュー項目が有効であるかどうかを示す値を取得または設定します。
Public Property Enabled As Boolean
[C#]
public bool Enabled {get; set;}
[C++]
public: __property bool get_Enabled();public: __property void set_Enabled(bool);
[JScript]
public function get Enabled() : Boolean;public function set Enabled(Boolean);
プロパティ値
メニュー項目が有効な場合は true 。それ以外の場合は false 。既定値は true です。
解説
無効になっている MenuItem は、その状態を示すために淡色表示になっています。親のメニュー項目が無効になっていると、そのサブメニュー項目もすべて表示されません。
使用例
[Visual Basic, C#, C++] 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
[C#]
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;
}
}
[C++]
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;
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET