[API Addition] Use ScollBar control for ScrollableControls to allow usage of Custom ScrollBarRenderers.
- Dominant language
- C#
- Stars
- 4.9k
- Forks
- 1.1k
- Avg merge
- 1d 13m
- Merged PRs (30d)
- 85
Description
I think that replacing Scrollbars can be a pain in the butt when you want to theme an winforms application. What if someone wants to make the entire form look like the UWP dark theme on Windows 10 but hard coded as dark theme?
I think the application should be able to colorize the scrollbars without:
1. Using undocumented windows api that can always change or break.
2. Reinventing the wheel and having to create their own hacked together scrollbar for a hacked together class that would end up being the same scrollable controls we got now.
I am also in the works of investigating NCPAINT on forms themeselves and getting the real bounds of that area; I know for sure at least on 10, 8, and 8.1 those bounds should be rectangle, on windows XP ~ 7 rounded rectangle using Regions. I was thinking of somehow inside of Form class calculate it by OS version the true bounds; then use a custom FormNCRenderer class (which I will intend to be subclassable) which would contain the painting of the NC area; text; and icon with system menu; which itself would allow use of an ContextMenuRenderer; and an for the Minimize; maximize; close; and help buttons allow yet another renderer separate from FormNCRenderer to keep it small and concise and readable.
I think if we want to allow theming we should allow the user to override the system painting as well entirely.
I hope my 'hacking' for this on my program can benefit everyone eventually.
Contributor guide
Assessment
This issue has not been assessed yet.