アイテムのリストビューがあるとしましょう
apple
banana
beans
リストビューに添付された5つのcontextmenustrip、たとえばcontextmenustripアイテムが追加された
空のリストのどこにもないリストビューのアイテムをクリックしたときにのみ追加を有効にしたい。
アイテムのリストビューがあるとしましょう
apple
banana
beans
リストビューに添付された5つのcontextmenustrip、たとえばcontextmenustripアイテムが追加された
空のリストのどこにもないリストビューのアイテムをクリックしたときにのみ追加を有効にしたい。
Opening
コンポーネントのイベント(コンテキストメニューが実際に表示される前に発生します)をインターセプトして、ContextMenuStrip
次のようにします。
public partial class Form1 : Form {
public Form1() {
this.InitializeComponent();
this.contextMenuStrip1.Opening += this.contextMenuStrip1_Opening;
}
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) {
this.itemAdd.Enabled = this.listView1.SelectedItems.Count > 0;
}
}
ContextMenuStrip
コントロールから少なくとも1つのアイテムを選択しない限り、コントロールがまったく表示されないようにする別のアプローチを次に示しますListView
。
Opening
このアプローチは、のイベントもインターセプトしContextMenuStrip
ます。
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
e.Cancel = this.listView1.SelectedItems.Count <= 0;
}