code de notification LVN_GETDISPINFO
Envoyé par un contrôle d’affichage de liste à sa fenêtre parente. Il s’agit d’une demande pour que la fenêtre parente fournisse les informations nécessaires à l’affichage ou au tri d’un élément list-view. Ce code de notification est envoyé sous la forme d’un message WM_NOTIFY .
LVN_GETDISPINFO
pdi = (NMLVDISPINFO*) lParam
Paramètres
-
lParam
-
Pointeur vers une structure NMLVDISPINFO . Lors de l’entrée, la structure LVITEM contenue dans cette structure spécifie le type d’informations requises et identifie l’élément ou le sous-élément d’intérêt. Utilisez la structure LVITEM pour renvoyer les informations demandées au contrôle. Si votre gestionnaire de messages définit l’indicateur LVIF_DI_SETITEM dans le membre de masque de la structure LVITEM , le contrôle list-view stocke les informations demandées et ne les demande pas à nouveau.
Valeur retournée
Pas de valeur de retour.
Notes
Le récepteur de notification caste lParam pour récupérer la structure NMLVDISPINFO . Le paramètre wParam contient le code de notification.
Un contrôle d’affichage de liste envoie le code de notification LVN_GETDISPINFO pour récupérer les informations d’élément stockées par l’application plutôt que par le contrôle. Les informations peuvent être du texte ou des informations d’icône pour un élément. Il peut également s’agir d’informations d’état d’élément. Consultez le message LVM_SETCALLBACKMASK pour plus d’informations sur l’implémentation de l’état de l’élément sur une base de rappel.
Pour plus d’informations sur les rappels d’affichage de liste, consultez Éléments de rappel et masque de rappel.
Exemples
L’exemple suivant montre comment ce code de notification peut être géré pour définir le texte dans les colonnes d’un affichage de liste. Les données de chaque élément sont conservées dans la structure suivante.
typedef struct tagPETINFO
{
TCHAR szName[50];
TCHAR szBreed[50];
TCHAR szGender[7];
TCHAR szPrice[20];
GroupIds iGroup;
} PETINFO;
Ce qui suit provient du gestionnaire de WM_NOTIFY dans la procédure de boîte de dialogue.
case WM_NOTIFY:
switch (((LPNMHDR) lParam)->code)
{
case LVN_GETDISPINFO:
{
NMLVDISPINFO* plvdi = (NMLVDISPINFO*)lParam;
switch (plvdi->item.iSubItem)
{
case 0:
// rgPetInfo is an array of PETINFO structures.
plvdi->item.pszText = rgPetInfo[plvdi->item.iItem].szName;
break;
case 1:
plvdi->item.pszText = rgPetInfo[plvdi->item.iItem].szBreed;
break;
case 2:
plvdi->item.pszText = rgPetInfo[plvdi->item.iItem].szGender;
break;
case 3:
plvdi->item.pszText = rgPetInfo[plvdi->item.iItem].szPrice;
break;
default:
break;
}
return TRUE;
}
// More notifications...
}
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows Server 2003 [applications de bureau uniquement] |
En-tête |
|
Noms Unicode et ANSI |
LVN_GETDISPINFOW (Unicode) et LVN_GETDISPINFOA (ANSI) |