I have a list view the has the LVS_EX_FULLROWSELECT style. When I do a NM_CUSTDOMDRAW on the list view and custom draw a subitem icon I can no longer see the full highlight of the row when I click on it. The subitem were I did the custom draw has a white background. Do I need to handle CDIS_SELECTED in the NM_CUSTOMDRAW or change the background of the subitem?

case NM_CUSTOMDRAW:
{
NMLVCUSTOMDRAW *nm = (NMLVCUSTOMDRAW *)lp;
switch(nm->nmcd.dwDrawStage)
{
case CDDS_PREPAINT:
case CDDS_ITEMPREPAINT:
{
return CDRF_NOTIFYSUBITEMDRAW;
}
case CDDS_SUBITEM | CDDS_ITEMPREPAINT:
{
RECT rc;
HICON hIcon;
ListView_GetSubItemRect(nm->nmcd.hdr.hwndFrom, nm->nmcd.dwItemSpec, nm->iSubItem, LVIR_LABEL, &rc);
if (nm->iSubItem == 2 && nm->nmcd.lItemlParam != -1)
{
hIcon = ImageList_GetIcon(ghImageList, 0, ILD_NORMAL);
DrawIconEx(nm->nmcd.hdc, rc.left + 5, (rc.top + rc.bottom - GetSystemMetrics(SM_CYSMICON)) / 2, hIcon, 16, 16, 0, NULL, DI_NORMAL);
DestroyIcon(hIcon);
return CDRF_SKIPDEFAULT;
}
else break;
}
}
}
break;
