VB.NET - Changing row height in listview - Asked By jenn on 03-Jun-10 01:52 AM

good evening all :)

wondering if anyone knows how to change the ROW HEIGHT in a listview?
I dont need the horizontal lines so close together as I want to only show 8 Lines.

I know you can do columns..but i need to do rows (changing font size to achieve this is a last ditch effort)

I also cannot change it to Icons because I NEED it in details..

thanx :)
Sagar P replied to jenn on 03-Jun-10 01:57 AM
I think it's pretty lame that you can't specify row height per ListViewItem, or even the ListView itself when in details mode. The only solutions I've found suggest changing the font (which is super lame) or use OwnerDraw to draw the actual ListViewItems yourself. I would attempt the latter but didn't find any good examples online.

I did, however, manage to hack it pretty easily. Here are the steps to setting the row height on a ListView level.

  1. Add an ImageList to the form that contains your ListView.
  2. Change the ImageSize property on the ImageList from 16x16 to 1xN [w=1,h=N] - N obviously being the height you'd like your rows to be.
  3. Set the SmallImageList property on your ListView to the ImageList you added in Step 1.
That's it - you don't even need to assign image indeces to any of your ListViewItems.

I would love to do this the right way w/ minimal code, but this works pretty well for now.

http://www.csharper.net/blog/quick_hack_for_setting_the_row_height_of_a_listviewitem.aspx
Sara J replied to jenn on 03-Jun-10 02:04 AM
Use the imagelist to doraw the lsit control and extend it
Refer the url below
http://www.csharper.net/blog/quick_hack_for_setting_the_row_height_of_a_listviewitem.aspx
jenn replied to Sagar P on 03-Jun-10 10:17 AM
ahh! :)

that worked awesomely!! ThanxxXXXX!!!
jenn replied to Sara J on 03-Jun-10 10:18 AM
I already found a way from the post given above ya,, I am sure they both work very good!

thanxxXx for the fast reply! :)