|
-
Jun 21st, 2011, 09:23 AM
#1
Thread Starter
Lively Member
[RESOLVED] Listview ColumnHeader Sort Indicator
Hi all,
After a long time searching, I am still facing an issue with my listview column header I am trying to add a sort indicator (a small 16x16 arrow, next to the column title - looks quite good).
- My listview is in Ownerdraw mode for : Items & Subitems for a couple of reasons
- So far, I was letting the system do the job for the header (e.drawdefault = true)
I managed to add very easily the arrow using the e.graphics class, right after the e.drawdefault=true, and it is actually working good.
print01.gif

Code:
(Sub ColumnHeader OwnerDraw)
e.DrawDefault = True
e.Graphics.DrawImage(My.Resources.fleche_v2_16x16, 34, 2, 16, 16)
As you can see, I'm simply using a resource, and am forcing it to 16x16 with a custom location x=34 pixels y=2pixels
My issue comes with the following :
Code:
(Sub ColumnHeader OwnerDraw)
e.DrawDefault = True
e.Graphics.DrawImage(My.Resources.fleche_v2_16x16, (e.Bounds.X + 34), 2, 16, 16)
The arrow wont draw 
Of course the sort indicator will sometime be on the 2nd column etc.. That's why I need to use the column header's bounds.
I can already hear you saying : if you do not owner draw, you can't..
But why is it working with a static location (, 34, 2, 16, 16) ans not starting from another static location (e.bounds.x)  
How can I fix that ? I cant find previous issues similar to that one over the internet.
Points of interest :
- I tryed to load the int value e.bounds.x into a variable before, using that instead of e.bounds.x but it's all the same.
- Using the imagelist is not an option, As you can tell from the screenshot, I am already using images for headers.. the sort indicator is coming as another image
- Using ">" or "<" in the header's text is not an option either........ (sorry pal It does not look good at all..)
- Drawing the header totally in owner draw mode would be an option, but it looks quite hard to do (need to manage the "rounded" header style of the system, the mouse over - small yellow line rounded on the sides in WinXp, the click effect....).
Hope someone can help with that!
Any comments will be much appreciated 
CastAway
Tags for this Thread
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|