参考这两个函数,答案在其中(你要不了这么复杂)void CGDeleteAllListColumn(CListCtrl &wndListCtrl)
{
    for (int nColCount = 0; nColCount <= 6; ++nColCount) 
{
wndListCtrl.DeleteColumn(0); //注意: 这个参数始终是0
}
}void CGListCtrlRefreshCols(CListCtrl &wndListCtrl)
{
CGDeleteAllListColumn(wndListCtrl);
    wndListCtrl.InsertColumn(0, "ID", LVCFMT_CENTER, 30); 
wndListCtrl.InsertColumn(1, "名称", LVCFMT_CENTER, 140); 
    wndListCtrl.InsertColumn(2, "类型", LVCFMT_CENTER, 60);
    wndListCtrl.InsertColumn(3, "实时ID", LVCFMT_CENTER, 60);
}
void CGListCtrlRefreshItems(CListCtrl &wndListCtrl)
{
CGReleaseListItemData(wndListCtrl);
wndListCtrl.DeleteAllItems();      CString szSql = CString("SELECT * FROM PMIS.COM_CG_GRAPH ORDER BY GRAPH_ID ASC");    
    CCGCallDB *cgCallDB = new CCGCallDB(((CCoGraphApp*)AfxGetApp())->m_pAdoConnection);
    cgCallDB->SqlOpen(szSql);    int nGraphCount = 0;
while(!cgCallDB->m_pAdoRecordset->adoEOF)   
    {
    CCGGraph *pCGGraph = new CCGGraph;
        pCGGraph->SetCGObjID((LONG)cgCallDB->m_pAdoRecordset->GetCollect("GRAPH_ID"));
        pCGGraph->SetGraphName((LPCTSTR)(_bstr_t)cgCallDB->m_pAdoRecordset->GetCollect("GRAPH_NAME"));
        pCGGraph->SetGraphType((LPCTSTR)(_bstr_t)cgCallDB->m_pAdoRecordset->GetCollect("GRAPH_TYPE"));
        pCGGraph->SetGraphRealRefCycle((LONG)cgCallDB->m_pAdoRecordset->GetCollect("GRAPH_REALREFCYCLE"));
        pCGGraph->SetRealID((LONG)cgCallDB->m_pAdoRecordset->GetCollect("GRAPH_REALID"));        CString szGraphID;
        szGraphID.Format("%d", pCGGraph->GetCGObjID());
        wndListCtrl.InsertItem(nGraphCount, szGraphID, 0);
        wndListCtrl.SetItemText(nGraphCount, 1, pCGGraph->GetGraphName());
wndListCtrl.SetItemText(nGraphCount, 2, pCGGraph->GetGraphType());
        CString szRealID;
        szRealID.Format("%d", pCGGraph->GetRealID());
        wndListCtrl.SetItemText(nGraphCount, 3, szRealID);
        wndListCtrl.SetItemData(nGraphCount, DWORD(pCGGraph));  ++nGraphCount;
        cgCallDB->m_pAdoRecordset->MoveNext();
    }
    delete cgCallDB;

}