我在ListView中关联了一个ContextMenuStrip控件,发现在ListView中的任何地方右击时这个菜单都会出现。能不能只在ListView中的某一行上右击时才会出现菜单?

解决方案 »

  1.   

    在ContextMenuStrip的Opening事件中检查listview是否有选中项,如果没有,则e.Cancel=true,就不会弹出来了~~~
      

  2.   

    ref:
    http://www.codeproject.com/cs/miscctrl/ListViewContextMenu.asp?target=listview%7CContextMenuContext Menu for ListView Column Manipulation
      

  3.   

    这个无所谓啊, 你可以用if来判断是否选中项 , 如果true就可以执行你要的操作, 其他空白地方也有右键, 你可以else跳出个对话框嘛,