我正在用 c# 创建一个应用程序,我想在轨迹栏组件上获得相同的效果,就像在 Windows 7 中的系统音量应用程序中一样(绿线代表当前的声级输出)。
我想根据一些逻辑在轨迹栏后面画一条绿线。问题是轨迹栏有背景颜色,如果我在它后面画任何东西,背景颜色会画在线条上,我不能画在它上面,因为它会画在轨迹栏滑块/按钮上。
我是否必须从头开始实现自己的轨迹栏绘制方法,还是有更简单的解决方案?
我有一个类似的问题,不幸的是你不能在轨迹栏控件上这样做。但是,创建您自己的用户绘制的轨迹栏非常简单, 请看这篇文章。
然而,我最终做的是使用 TrackBarRenderer 类来创建我自己的轨迹条,这样做的好处是它使用相同的代码,因此具有与标准轨迹条相同的样式,但是你可以改变它的几乎所有东西,那里是如何在此处使用此样式创建轨迹栏的示例。
如果您查看代码,您应该会看到您需要做的就是更改OnPaint
方法以trackRectangle
使用您选择的颜色进行绘制。