Sdílet prostřednictvím


CListCtrl::MapIndexToID

Mapuje index položky v aktuální ovládací prvek zobrazení seznamu jedinečný identifikátor.

UINT MapIndexToID(
     UINT index
) const;

Parametry

Parametr

Description

[v]index

Z nuly vycházející index položky.

Vrácená hodnota

Jedinečné ID pro danou položku.

Poznámky

Ovládací prvek zobrazení seznamu interně sleduje položky indexu.Protože během životnosti ovládacího prvku můžete změnit indexy to může zapříčinit potíže.Ovládací prvek zobrazení seznamu můžete označit položky s ID při vytvoření položky.Tento Identifikátor slouží k dobu trvání zobrazení seznamu řízení přístupu k určité položky.

Všimněte si, že v prostředí s více podprocesy je index zaručen pouze v podprocesu, který je hostitelem ovládacího prvku zobrazení seznamu, nikoli na pozadí podprocesů.

Tato metoda odesílá LVM_MAPINDEXTOID zprávy, která je popsána v .

Požadavky

Záhlaví: afxcmn.h

Tento ovládací prvek je podporována v a novější.

Další požadavky této metody jsou popsány v Vytváření požadavků pro běžné ovládací prvky systému Windows Vista.

Příklad

Následující příklad kódu definuje proměnné, m_listCtrl , je pro aktuální zobrazení seznamu řízení přístupu.Tato proměnná se používá v následujícím příkladu.

public:
    // Variable used to access the list control.
    CListCtrl m_listCtrl; 

Následující příklad kódu ukazuje MapIndexToID metoda.V předchozí části tohoto příkladu kódu jsme vytvořili zobrazení seznamu ovládací prvek zobrazující dva sloupce v zobrazení sestavy s názvem "ClientID" a "Třídu".Následující příklad mapuje identifikační číslo indexu každé položky v zobrazení seznamu a potom načte index pro každý identifikační číslo.Nakonec příklad zprávy, zda původní indexy nebyly načteny.

    // MapIndexToID
    int iCount = m_listCtrl.GetItemCount();
    UINT nId = 0;
    UINT nIndex = 0;
    for (int iIndexOriginal = 0; iIndexOriginal < iCount; iIndexOriginal++)
    {
        // Map index to ID.
        nId = m_listCtrl.MapIndexToID((UINT)iIndexOriginal);

        // Map ID to index.
        nIndex = m_listCtrl.MapIDToIndex(nId);

        if (nIndex != (UINT)(iIndexOriginal))
        {
            CString str;
            str.Format(_T("Mapped index (%d) is not equal to original index (%d)"),
                nIndex, (UINT)(iIndexOriginal));
            AfxMessageBox(str);
            return;
        }
    }
    AfxMessageBox(_T("The mapped indexes and original indexes are equal."), 
        MB_ICONINFORMATION);

Viz také

Referenční dokumentace

Třída CListCtrl

Diagram hierarchie

LVM_MAPINDEXTOID

CListCtrl::MapIDToIndex