Showing posts from November, 2011

C# - ListView Item Spacing (Padding)

I'm perplexed at the reasoning that the ListView control, has no direct spacing/padding property. I am utilizing the ListView in the capacity of images, using the View state, View.LargeIcon. There is a method to modify the spacing/padding between the ListViewItem(s).

Initially, you'll need to add:
using System.Runtime.InteropServices; Next, you'll need to import the DLL, so that you can utilize SendMessage, to modify the ListView parameters.
[DllImport("user32.dll")] public static extern int SendMessage(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam); Once completed, create the following two functions/methods:
public int MakeLong(short lowPart, short highPart) { return (int)(((ushort)lowPart) | (uint)(highPart << 16)); } public void ListViewItem_SetSpacing(ListView listview, short leftPadding, short topPadding) { const int LVM_FIRST = 0x1000; const int LVM_SETICONSPACING = LVM_FIRST + 53; SendMessage(listview.Handle,…