我有一个ListView
,我可以在它上面显示其他控件。当您单击其中一个控件并执行操作时,我可以捕获。我还想向其下方的ListView
发送单击通知,以便它就像单击了ListView
一样。因此,它将选择/取消选择发生单击的ListView
中的项目。我想向ListView
发送单击消息,而不是手动选择/取消选择该项目,因为我不想尝试确定它是否是多选列表,按下了哪些键,哪些未单击的项目需要保持选中或未选中,...理想情况下,我会向ListView
发送单击通知,它会采取所有适当的操作,就像被单击一样。
我已经尝试从user32.dll
调用SendMessage
-WM_NOTIFY
和OCM_NOTIFY
都使用NMITEMACTIVATE
结构作为lParam
。我似乎无法让它工作。我也玩过OnNotifyMessage
电话,但没有运气。
我可以成功地从列表视图顶部的控件捕获单击事件,获取光标位置,将其转换为其下方ListView
中的项目/子项目,...我似乎无法以编程方式发送需要发送到ListView
的任何通知,因此它采取了适当的操作。
编辑:
下面链接中的可能解决方案将允许单击通过控件传递到其下方的 ListView,但您必须为所有控件创建自定义类,并且您将无法处理顶部控件中的任何单击事件。
您需要创建一个类,用于扩展驻留在 ListView 上的控件并重写其事件之一。 这是一个与您的问题非常相似的问题,应该对您有所帮助。 https://stackoverflow.com/a/8635626/3508142