朋友帮忙 UP 一下啊,我也会给你分的!!
分不够我会另开一贴给的!!!

解决方案 »

  1.   

    是这样的,你在删除的同时也在改变header的Item的这个数组,它被删除了一个Element,当然要发生移动操作,应改为:    
            for(int i=0; i<iHeaderItemCount; i++)
                pHeaderCtrl->DeleteItem(0);//listCtrl.DeleteColumn(i);
    或者:
    void CListDlg::DeleteHeader()
    {
        CListCtrl* plistCtrl=(CListCtrl*)GetDlgItem(IDC_LIST1);
        
        CHeaderCtrl *pHeaderCtrl = plistCtrl->GetHeaderCtrl();
         while(pHeaderCtrl->GetItemCount()!=0)
            pHeaderCtrl->DeleteItem(0);}