Professional UI Solutions
Site Map   /  Register


Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS General Discussion » Getting CListCtrl to Skin Correctly Collapse All
Subject Author Date
Bill Olson Nov 25, 2009 - 4:28 AM

I thought I had this working when I applied the instructions for CextNCSB to a CExtListCtrl in the same way you instructed for a CRichEditCtrl, but there were some problems I just discovered.

I have a CListCtrl derived class that is used in a few places in my application.  I don’t recall exactly how I initially did it after I got the CRichEditCtrl scroll bars skinned, but it was looking correct.  I have been experimenting around with it and currently the control and this is the current behavior:

-Upon initial draw, the scroll bar is not skinned

-When I scroll with the mouse wheel, the up and down arrows skin, but the slide bar does not. 

-Changing focus away from the control causes the slide bar to skin.

-Moving the mouse over the slide bar also causes it to skin

-The way it was working before the latest changes, the list would scroll with the mouse wheel, but not with the up and down arrows on the slide bar or grabbing and dragging the slide bar.

This is how I currently have the control defined:

The class definition

class CTTListCtrl : public CExtNCSB <CExtListCtrl>

The constructor

CTTListCtrl::CTTListCtrl() : CExtNCSB < CExtListCtrl > (true,true)



Declaration of the list control

    CTTListCtrl    m_HistoryList;

I tried deriving the CTTListCtrl class from CListCtrl as described in another forum post I saw here, but that only skins the scroll bar.  I must be missing something simple.


Bill Olson Nov 30, 2009 - 11:47 PM

I e-mailed tech support with a sample project over the weekend.


Technical Support Dec 2, 2009 - 3:43 AM

We received your e-mail and replied it with a fixed version of your project in attachment.

Technical Support Nov 26, 2009 - 2:06 AM

You correctly invoked the parent class constructor:

CTTListCtrl::CTTListCtrl() : CExtNCSB < CExtListCtrl > (true,true)
Please also check your code correctly invoked the parent class virtual methods.
Prof-UIS uses themed list view control with themed scroll bars in the CExtShellDialogFile class. The file dialog is the very often used component and we have no similar reports about its list view control.
In any case, you can create a simplest possible test project reproducing the problem and send it to us