We need you!

We're working hard on the next version of Developer Fusion. Let us know what you think we should be up to!

Members

Technology Zones

Articles

Hosted By

MaximumASP

Info

Rated
Read 201,668 times

Contents

Related Categories

ListView Control - Flat Column Headers

Flat Column Headers

To make the column headers flat, all you need to do is add the code below to a module, and call SetFlatHeaders with the hWnd of the ListView control.

Private Const GWL_STYLE = (-16)
Private Const LVM_FIRST = &H1000 '// ListView messages
Private Const LVM_GETHEADER = (LVM_FIRST + 31)
Private Const HDS_BUTTONS = &H2
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SendMessageLong Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long) As Long

Public Sub SetFlatHeaders(lTreeViewhWnd As Long)
Dim lS As Long
Dim lhWnd As Long

   ' Set the Buttons mode of the ListView's header control:
   lhWnd = SendMessageLong(lTreeViewhWnd, LVM_GETHEADER, 0, 0)
   If (lhWnd <> 0) Then
      lS = GetWindowLong(lhWnd, GWL_STYLE)
      '// change this to lS = lS Or HDS_BUTTONS to make them normal again
      lS = lS And Not HDS_BUTTONS
      SetWindowLong lhWnd, GWL_STYLE, lS
   End If
  
End Sub

James first started writing tutorials on Visual Basic in 1999 whilst starting this website (then known as VB Web). Since then, the site has grown rapidly, and James has written numerous tutorials, articles and reviews on VB, PHP, ASP and C#. In October 2003, James formed the company Developer Fusion Ltd, which owns this website, and also offers various development services. In his spare time, he's a 3rd year undergraduate studying Computer Science in the UK. He's also a Visual Basic MVP.

Comments

  • Re: [74] ListView Control

    Posted by SeanH on 14 Nov 2007

    How to sort a ListView control? Here is the code I have written to handle just that. This code also includes a context menu of items I found I needed on almost every ListView I used (I use them alo...

  • Re: [74] ListView Control

    Posted by SeanH on 14 Nov 2007

    [quote user="Maxjonz"]

    I found that the following code didn't work for me


    ListView1.ListItems.Remove(ListView1.SelectedItem) '// removes the selected item...

  • Re: [74] ListView Control

    Posted by anatha1 on 10 Aug 2007

    Hey everyone here are some example of Database that use ListView:


    if u need in C# pls copy this code convert to C# your self.



    1. Use Microsoft Access Database

    ...

  • Re: [74] ListView Control

    Posted by Halina on 08 Aug 2007

    Hi..


    I using ListView in C#.


    I tried to add text into certain colum in ListView.


    For example: I have 3 columns, Column1, Column2, Column3.


    I want to insert "TEST1"&n...

  • Re: [74] ListView Control

    Posted by Maxjonz on 05 Jul 2007

    I found that the following code didn't work for me


    ListView1.ListItems.Remove(ListView1.SelectedItem) '// removes the selected item


    I had t...