假设我有一个包含项目的列表视图
apple
banana
beans
我将 contextmenustrip 附加到列表视图,例如添加 contextmenustrip 项
我希望仅当我单击列表视图中的项目而不是空列表中的任何位置时才启用添加。
假设我有一个包含项目的列表视图
apple
banana
beans
我将 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
除非您从控件中选择了至少一项,否则这是另一种完全阻止控件出现的方法ListView
:
这种方法还拦截Opening
了ContextMenuStrip
.
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
e.Cancel = this.listView1.SelectedItems.Count <= 0;
}