A version of this page is also available for

Windows Embedded CE 6.0 R3


This macro inserts a new item in a list-view control. You can use this macro or send the LVM_INSERTITEM message explicitly.


int ListView_InsertItem( 
  HWND hwnd, 
  const LVITEM FAR* pitem 


  • hwnd
    Handle to the list-view control.
  • pitem
    Pointer to an LVITEM structure that specifies the attributes of the list-view item. The iItem member of the structure specifies the index of the new item.

    You cannot use ListView_InsertItem or LVM_INSERTITEM to insert subitems; the iSubItem member of the LVITEM structure must be zero.

Return Value

The index of the new item indicates success. -1 indicates failure.


If a list-view control has either the LVS_SORTASCENDING or LVS_SORTDESCENDING window style, an LVM_INNSETITEM message will fail if you try to insert an item that has LPSTR_TEXTCALLBACK as the pszText member of its LVITEM structure.

Related message: LVM_INSERTITEM


Header commctrl.h
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also


List-View Controls Macros