在使用tree控件时,发现某项的子项下总是会出重复的数据,所以就想到了在重新绑定前删除所有的子项。网上找了一些代码,但是始终不能解决问题,后来才发现,在删除某一子项前要先取得该子项的兄弟结点再做删除。
hCurrent:要删除其下的子项.
if(m_ctrlTree.ItemHasChildren(hCurrent))
{
hChild=m_ctrlTree.GetChildItem(hCurrent);
while(hChild!=NULL)
{
HTREEITEM hTemp=m_ctrlTree.GetNextSiblingItem(hChild);//先取得兄弟结点
m_ctrlTree.DeleteItem(hChild);
hChild=hTemp;
}
}