C# listbox鼠标选择改变改行颜色的另一种方便方法

C# listbox鼠标选择改变改行颜色的另一种方便方法

今日因为要做一个园区播放器,里面包含音乐播放器和任务播放等功能。其中音乐列表用到了listbox这个控件。由于listbox控件简单,没有选择改变选择项颜色的方法,网上花了很多时间,都不能简单地做成音乐播放到那里,列表那里就变色的效果。

大神们的方法都是高深复杂的。我觉得学一下可以,但项目需要的快速响应,我就选择了自己突然想到的一种方法。

大概的原理:

1.在listbox上面新建一个panel控件,用于覆盖选择行的值

2.panel上面放一个label,text值就是selectitem

3.在listbox的_SelectedIndexChanged事件中,根据鼠标移动的listbox.selectedIndex,上下移动panel,覆盖选择行,计算公式是:

panel.Location = new Point(X坐标, 原Y坐标+listbox.ItemHeight * listbox.selectedIndex);

如果朋友们知道控件透明简单快捷一点的方法,麻烦留个资料给我,我需要这个做进程条透明显示

 

 

原文地址:https://www.cnblogs.com/mrrxu/p/4030258.html