我已经覆盖列表视图的绘制事件以绘制我自己的单个图块。在每个磁贴上,我想放置一个手机图标并附加一个单击事件,以便用户可以单击小图标(在平铺列表视图项目内)并执行命令。
我还想实现一种悬停类型的场景,当鼠标悬停在图标上时,我可以更改图标颜色或文字颜色。
有人知道这是否可行?
如果有任何不同,我在tile视图中使用ObjectListView。
答案 0 :(得分:0)
我猜您使用ObjectListView's
ItemRenderer
来自定义平铺图块。
每个渲染器都有HitTest()
方法。在您的渲染器中,覆盖此方法,当给定点超出某些有趣内容时,将OlvListViewHitTestInfo.HitTestLocation
更改为UserDefined
并将OlvListViewHitTestInfo.UserData
更改为您想要的任何内容(例如“手机”)。< / p>
ObjectListView.MouseMoveHitTest
保存最后一次鼠标移动的命中测试信息。
设置MouseUp
事件处理程序,并在该处理程序中查看MouseMoveHitTest.HitTestLocation
和MouseMoveHitTest.UserData
属性,以查看点击鼠标时鼠标是否在手机上。
同样,在绘制图块时,可以使用相同的属性来决定是否突出显示手机。