1

アイテムのリストビューがあるとしましょう

apple
banana
beans

リストビューに添付された5つのcontextmenustrip、たとえばcontextmenustripアイテムが追加された

空のリストのどこにもないリストビューのアイテムをクリックしたときにのみ追加を有効にしたい。

4

2 に答える 2

2

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;
    }

}
于 2013-03-03T11:35:36.667 に答える
0

ContextMenuStripコントロールから少なくとも1つのアイテムを選択しない限り、コントロールがまったく表示されないようにする別のアプローチを次に示しますListView

Openingこのアプローチは、のイベントもインターセプトしContextMenuStripます。

private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) 
{
     e.Cancel = this.listView1.SelectedItems.Count <= 0;
}
于 2013-07-19T15:18:19.707 に答える