Как настроить HTREEITEM, чтобы иконка изменялась если часть древа раскрыта?

HTREEITEM InsertTreeFolder(LPSTR str, HTREEITEM parent)
{
TVINSERTSTRUCT lpItem;
TVITEMEX tvi;
tvi.mask = TVIF_TEXT | TVIF_IMAGE
| TVIF_SELECTEDIMAGE | TVIF_PARAM | TVIF_EXPANDEDIMAGE;
tvi.pszText = str;
tvi.cchTextMax = sizeof(tvi.pszText) / sizeof(tvi.pszText[0]);
tvi.iImage = TV_IT;
tvi.iSelectedImage = TV_ITSEL;
tvi.iExpandedImage = TV_ITSEL;
lpItem.itemex = tvi;
lpItem.hParent = parent;
return FILEVIEW.InsertItem(&lpItem);
}
На левом скрине правильное поведение, на правом то что получилось у меня.
Вроде все делаю правильно, но тем не менее, реакция есть только на выделенную папку, но не на раскрытую.