我有带滚动条控件的WinForms应用程序,我需要更改这些scrollbars
的外观。
除了从头开始创建滚动条控件之外,还有什么办法吗?我不能使用WPF,因为目标是.NET 2.0。
答案 0 :(得分:2)
从我记忆中,做这样的事情的唯一方法是继承标准控件然后重写OnPaint()方法。
在.NET 2.0中,不可能以任何其他方式执行此操作。
如果您改变主意并决定沿着自定义控制路径走下去,这是CodeProject>的一个很好的例子。 http://www.codeproject.com/Articles/14801/How-to-skin-scrollbars-for-Panels-in-C
希望这有帮助。
答案 1 :(得分:1)
public class MyScrollBar : VScrollBar
{
public MyScrollBar()
{
SetStyle(ControlStyles.UserPaint, true);
}
protected override void OnPaint(PaintEventArgs e)
{
e.Graphics.DrawRectangle(SystemPens.ControlDark, e.ClipRectangle.Left, e.ClipRectangle.Top, e.ClipRectangle.Width - 1, e.ClipRectangle.Height - 1);
}
}
是的一种方式,但是可能很难保持滚动条轨道和按钮的正确位置。无论如何,你可以从这里开始。