In MFC, a CListBox has a "disable no scroll" property. When you set it to true, the vertical scrollbar is always there, no matter how many items you have. How can I do the same thing with CListCtrl?
The standard control does not seem to support your desired behavior.
You could either create enough entries to make the scroll bar visible or you could create your own control implementing it the way you like. Inbetween would be the ownerdrawn style, but that does not apply to the scroll bar.
BTW: what would be a reason to have the scrollbar visible all the time in a list control anyways?
Given you are trying to have a nice report view with columns sized to fit exactly - no horizontal scroll and no ugly grey bar in place of scroll.
From memory in the report view you can add a final column which will fill the rest of the space and cannot be sized. I cannot seem to find the appropriate code in the MSDN at the moment, recalling vaguely a size of -1 for the column.
If you where to continue to resize the columns, then I would do that when : - the app finishes adding/deleting a set of new items to the report - the user resizes the report window
Also to consider, why not let the users adjust the size of the columns to what they want?