我有一些包含一些项目的ListView。 ListView有一些组定义,一些列,并添加了一些项目。 ListView还设置了ContextMenu。
在ContextMenu的打开事件中,我将检查是否在ListView项上打开了上下文菜单。所以,我做了:
private void CtxMenuProcess_Opening(object sender, CancelEventArgs e)
{
ContextMenuStrip ctxMenuStrip = (ContextMenuStrip)sender;
ListViewHitTestInfo hitTestInfo = LstViewAdminApp.HitTest(LstViewAdminApp.PointToClient(Control.MousePosition));
if (hitTestInfo.Item != null) {
//....
}
}
可悲的是,没有发生这种打击。
我觉得 ctxMenuStrip 的坐标是错误的,但我尝试了很多“变种”而没有成功,而且ListView.HitTest的文档很差。
任何人都可以帮助我?
进一步调查没有带来任何解决方案。我开始怀疑ListView控件初始化。这是我设置的非默认属性: