あなたはこのようなあなたのビューで選択変更ハンドラから直接選択した項目の詳細を更新するためにコントロールバーウィンドウ内のデータを更新するメソッドを呼び出すことができます。
void CMyListView::OnItemChanged(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
// Did the item state change?
if (pNMListView->uChanged & LVIF_STATE)
{
// Did the item selection change?
const bool oldSelState = (pNMListView->uOldState & LVIS_SELECTED) != 0x0;
const bool newSelState = (pNMListView->uNewState & LVIS_SELECTED) != 0x0;
const bool selStateChanged = oldSelState != newSelState;
if(selStateChanged)
{
// selection has changed
CMainFrame* pMainWnd = (CMainFrame*)AfxGetMainWnd();
CItemDetailsWnd* pDetailsWnd = pMainWnd->GetDetailsDialogBar();
CItemData* pItemData = (CItemData*)GetListCtrl().GetItemData(pNMListView->iItem);
pDetailsWnd->PopulateDetails(pItemData);
}
}
*pResult = 0;
}
この例ではCItemData
がために、あなたのデータホルダーです単一のCListView
アイテム/行。 CItemDetailsWnd
は、現在選択されている項目の詳細を表示するダイアログコントロールバーです。
CItemDetailsWnd - これは何ですか.....ドックパネルクラスまたはダイアログクラスへのポインタ – meisathish
この例では、ドッキング可能なペインへのポインタです。 –