是否可以将Click事件添加到ListView图块中的图标?

时间:2014-11-25 02:36:57

标签: listview objectlistview

我已经覆盖列表视图的绘制事件以绘制我自己的单个图块。在每个磁贴上,我想放置一个手机图标并附加一个单击事件,以便用户可以单击小图标(在平铺列表视图项目内)并执行命令。

我还想实现一种悬停类型的场景,当鼠标悬停在图标上时,我可以更改图标颜色或文字颜色。

有人知道这是否可行?

如果有任何不同,我在tile视图中使用ObjectListView。

1 个答案:

答案 0 :(得分:0)

我猜您使用ObjectListView's ItemRenderer来自定义平铺图块。

每个渲染器都有HitTest()方法。在您的渲染器中,覆盖此方法,当给定点超出某些有趣内容时,将OlvListViewHitTestInfo.HitTestLocation更改为UserDefined并将OlvListViewHitTestInfo.UserData更改为您想要的任何内容(例如“手机”)。< / p>

ObjectListView.MouseMoveHitTest保存最后一次鼠标移动的命中测试信息。

设置MouseUp事件处理程序,并在该处理程序中查看MouseMoveHitTest.HitTestLocationMouseMoveHitTest.UserData属性,以查看点击鼠标时鼠标是否在手机上。

同样,在绘制图块时,可以使用相同的属性来决定是否突出显示手机。