C# listbox鼠标选择改变改行颜色的另一种方便方法
2014-10-17 09:45 super2046 阅读(1574) 评论(0) 编辑 收藏 举报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);
如果朋友们知道控件透明简单快捷一点的方法,麻烦留个资料给我,我需要这个做进程条透明显示