alt text http://img413.imageshack.us/img413/9417/snapshotapp.jpg
ContextMenuStrip绑定到ListView控件。但是,右键单击选项(编辑) 出现在我单击ListView区域的地方,这给了我特殊的错误,因为编辑的实现只能处理选定的行。我只希望它出现在选定的行(蓝色突出显示的行)上。我该怎么办?
答案 0 :(得分:9)
将ContextMenuStrip属性重置为(none)。实现MouseUp事件处理程序并使用ListView.HitTest()来找出它被点击的位置。例如:
private void listView1_MouseUp(object sender, MouseEventArgs e) {
if (e.Button == MouseButtons.Right) {
var loc = listView1.HitTest(e.Location);
if (loc.Item != null) contextMenuStrip1.Show(listView1, e.Location);
}
}