說,我已經與項目使列表視圖啓用的ContextMenuStrip項僅在列表視圖中選擇行具有元素C#
apple
banana
beans
香港專業教育學院附屬的ContextMenuStrip到ListView列表視圖,說的ContextMenuStrip產品添加
我想添加只有當我點擊列表視圖中的項目沒有在空列表上的任何地方啓用。
說,我已經與項目使列表視圖啓用的ContextMenuStrip項僅在列表視圖中選擇行具有元素C#
apple
banana
beans
香港專業教育學院附屬的ContextMenuStrip到ListView列表視圖,說的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;
}
}
很好,非常感謝。 – 2013-03-03 11:42:24
這裏是另一種方法是將被帶到停止ContextMenuStrip
控制除非您已經從ListView
控件中選擇了至少1項:
此方法還攔截ContextMenuStrip
的Opening
事件。
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
e.Cancel = this.listView1.SelectedItems.Count <= 0;
}
因此,您需要將contextmenustrip僅附加到ListViewDataItem而不是整個ListView – 2013-03-03 11:31:03