Aracılığıyla paylaş


CListCtrl::MapIndexToID

Geçerli liste görünüm denetimi içindeki bir öğenin dizin benzersiz bir kimliği eşlemeleri

UINT MapIndexToID(
     UINT index
) const;

Parametreler

Parametre

Description

[in]index

Bir öğeyi sıfır tabanlı dizini.

Dönüş Değeri

Belirtilen öğe benzersiz kimliği.

Notlar

Liste görünümü denetimi öğeleri dizine göre dahili olarak izler.Dizinler denetimin etkinlik süresi boyunca değişebileceği için bu sorunlar yaratabilir.Liste görünümü denetimi madde oluşturulduğunda bir Kimliğe sahip bir öğe etiketleyebilirsiniz.Liste görünümü denetimi yaşam için belirli bir öğeye erişmek için bu kodu kullanabilirsiniz.

Yalnızca arka plan iş parçacığı değil, liste görünümü denetimi barındıran iş parçacığı üzerinde dizin çok iş parçacıklı ortamda garanti dikkat edin.

Bu yöntem gönderir LVM_MAPINDEXTOID 'de açıklanan iletiyi Windows SDK.

Gereksinimler

Başlık: afxcmn.h

Bu denetim de desteklenen Windows Vista ve daha sonra.

Bu yöntem için ek gereksinimler kısmında açıklanmıştır Gereksinimleri Windows Vista genel denetimleri oluşturma.

Örnek

Aşağıdaki kod örneği, bir değişken tanımlar m_listCtrl, yani geçerli liste görünümü denetime erişmek için kullanılır.Bu değişken, bir sonraki örnekte kullanılır.

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

Aşağıdaki kod örneği gösterilmiştir MapIndexToID yöntemi.Bu kod örneği, bir önceki bölümde rapor görünümünde "İstemciKimliği" ve "Sınıf" başlıklı iki sütun görüntüleyen bir liste görünümü denetimi oluşturdu.Aşağıdaki örnek, bir kimlik numarası her liste görünümü öğenin dizini eşleştirir ve her kimlik numarası için dizin alır.Son olarak, örnek özgün dizinler elde bildiriliyor.

    // 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);

Ayrıca bkz.

Başvuru

CListCtrl sınıfı

Hiyerarşi grafik

LVM_MAPINDEXTOID

CListCtrl::MapIDToIndex