日期:2014-05-17  浏览次数:20800 次

listview右键菜单
想要在listview中有选中项时右键菜单出来,空白处点击无右键菜单
如下代码,但菜单出不来!求助!

        private void lvTeacher_RightClick(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right && lvTeacher.SelectedItems.Count > 0)
            {
                cmsEdit.Show(lvTeacher, e.Location);
            }
        }
listview 右键

------解决方案--------------------
上面的代码至少要选中一行,你那个判断才能成立,
其实按你提出的需求,用HitTest判断才是正确的
 private void listView1_MouseDown(object sender, MouseEventArgs e)
        {
            ListViewHitTestInfo li = lvTeacher.HitTest(e.Location);
            if (e.Button == MouseButtons.Right && li.Item!=null)
            {               
                cmsEdit.Show(lvTeacher, e.Location); 
            }
        }