Professional UI Solutions
Site Map   /  Register
 
 

Forum

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 Tech Support » tree control question Collapse All
Subject Author Date
Offer Har Feb 27, 2008 - 8:57 AM

Dear Support,

I have a tree control, in which I remove the tree lines, and I want the children items to be displayed under the parent items, like you did in CExtPropertyGridWnd.
What do I need to change to make this happen?

Thanks,
Ron.

Technical Support Mar 1, 2008 - 8:19 AM

Yes, that’s correct.

Offer Har Feb 28, 2008 - 8:04 AM

I am deriving from CExtTreeGridWnd, so to summarize it I need to:
1. override CExtTreeGridWnd::OnGbwAdjustRects
2. override CExtTreeGridWnd::OnGbwPaintCell so that it will paint accordingly.

Am I correct?

Technical Support Feb 28, 2008 - 7:52 AM

In the case of CExtTreeGridWnd, which is used in the property grid control, you should override the CExtTreeGridWnd::OnGbwAdjustRects() virtual method which changes the rectangles of cells in the column with outline in order to reserve some outline space and the CExtTreeGridWnd::OnGbwPaintCell() virtual method which implements custom outline painting. In the case of MFC’s CTreeCtrl, you should repaint all the visible items manually and implement your own hit-testing and mouse-based selection. We can provide you with a very extended version of such class which is still a tree view common control but implements painting and input event handling from ground up.

Offer Har Feb 28, 2008 - 4:27 AM

To clarify, I am talking about the horizontal perspective

In Property grid:

+ Node
  Child1
  Child 2


In Tree:
+ Node
     Child1
     Child2