我正在开发一个 Winforms 应用程序,需要设置滚动条的设计。我需要更改箭头、 slider 和轨道背景的颜色。我在 msdn 上找到了一个 ScrollBarRenderer msdn ScrollBarRenderer Info现在我不明白如何通过类似
的方法设置渲染ScrollBarRenderer.DrawRightHorizontalTrack(e.Graphics,
ClientRectangle, ScrollBarState.Normal);
// Draw the thumb and thumb grip in the current state.
ScrollBarRenderer.DrawHorizontalThumb(e.Graphics,
thumbRectangle, thumbState);
ScrollBarRenderer.DrawHorizontalThumbGrip(e.Graphics,
thumbRectangle, thumbState);
此代码在 OnPaint 中执行。
如果有任何帮助,我将不胜感激。
最佳答案
遗憾的是,ScrollBar 只是原生 Win32 API 的包装器,它不会公开条的颜色。
其他控件允许您扩展自定义渲染器并使用它,但是因为滚动条只是链接到 Win32 调用,所以您不能在此处执行此操作。
实现此目的的唯一方法是创建一个从 Control 扩展的自定义绘制滚动条类,如 Code Project 上的示例显示。
http://www.codeproject.com/Articles/41869/Custom-Drawn-Scrollbar
关于c# - 如何使用 ScrollBarRenderer 更改滚动条颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22195801/