我在一个视图里用了CListCtrl,有加了一个对话框往CListCtrl里面添加数据。我想实现的是,添加玩数据后CListCtrl能立即更新出那个添加的内容该怎么实现呢

解决方案 »

  1.   

    每次添加完数据,立即用SendMessage向视图发送自定义消息,通知视图添加的数据。视图在消息响应函数里,把数据添加到CListCtrl
      

  2.   

    在关闭对话框前保存添加的数据,把数据通过父窗口传给视类,再向视类中的CListCtrl中插入数据
    int CListCtrl::InsertItem( int nItem, LPCTSTR lpszItem ); //插入一行
    BOOL CListCtrl::SetItemText( int nItem, int nSubItem, LPTSTR lpszText ); //插入一行的各列数据
      

  3.   

    2楼的看懂了我用得数据库保存数据,对话框结束后把数据放入数据库。如果CListCtrl内的数据是排好序的,我想插入之后也是有序的该怎么弄。我用过
    m_list.SetRedraw(FALSE);
    m_list.DeleteAllItems();  
    再把数据重新插入  
    m_list.SetRedraw(TRUE);
    }
    结果和插入前是一样的