【发布时间】:2017-05-23 11:17:27
【问题描述】:
我在 c# 中创建了一个自定义列表框。 我使用 DrawItemEventArgs 在我的自定义 ListBox 上绘制了文本和图像。 当鼠标悬停在矩形上时,我想在矩形(ListBox 的项)中填充一种颜色。 有没有办法使用 DrawItemEventArgs 或其他方式。 请帮忙。 提前致谢。
【问题讨论】:
标签: c# mousehover eventargs listbox-control ondrawitem
我在 c# 中创建了一个自定义列表框。 我使用 DrawItemEventArgs 在我的自定义 ListBox 上绘制了文本和图像。 当鼠标悬停在矩形上时,我想在矩形(ListBox 的项)中填充一种颜色。 有没有办法使用 DrawItemEventArgs 或其他方式。 请帮忙。 提前致谢。
【问题讨论】:
标签: c# mousehover eventargs listbox-control ondrawitem
您应该检查鼠标在哪个项目上。 ListBox 有一个方法来做这样的检查:IndexFromPoint https://msdn.microsoft.com/en-us/library/kfw3x8dc%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396
现在,当您有项目索引时,您可以使用其他方法获取它的矩形:GetItemRectangle https://msdn.microsoft.com/en-us/library/system.windows.forms.listbox.getitemrectangle(v=vs.110).aspx
【讨论】: