如何将系统滚动条附加到我的控件

时间:2010-02-09 03:04:22

标签: c# winforms

我有一个控制&我想在我的控件上附加一个垂直滚动条。请不要建议我使用Panel控件。其实。我想知道如何用C#编程Windows。请帮我用C#中的代码。感谢。

2 个答案:

答案 0 :(得分:1)

您可以从system.windows.forms.scrollablecontrol派生您的控件,它将为您提供滚动功能。

答案 1 :(得分:1)

Windows中的系统滚动条是窗口的非客户区域的一部分。通过在创建窗口时将WS_HSCROLL和WS_VSCROLL样式添加到窗口,可以告诉Windows您需要滚动条。

然后使用Windows功能设置拇指的滚动范围和位置。当用户单击滚动条或拖动滚动条滑块时,您会在窗口过程中收到WM_HSCROLL和/或WM_VSCROLL消息。名为SCROLLBAR的窗口类只是一个子窗口,其WS_HSCROLL或WS_VSCROLL样式为无客户区。

有关如何在Win32 C ++代码中执行此操作的信息,请参阅Scrollbar Functions

如果您使用的是.NET表单,则可以从Benny提到的ScrollableControl类派生自定义窗口类。