Bonjour !

Je bataille toujours avec mon satané date picker!. Mon objectif est de permettre la saisie de date simplifiée (genre : 040205 pour 04/02/2005) dans une dialog box via un date picker.
Actuellement je récupère la chaine saisie (grâce à une précédente réponse sur le forum ) et je l'injecte dans le picker mais quelque chose m'empêche de l'afficher.

1) J'ai créé le "date picker" , avec option "edition", je l'initialise à la date du jour sans problème, il est bien affiché via un "pCtrl->SetTime".

2) Gestion du message en cas d'édition :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
ON_NOTIFY(DTN_USERSTRING, IDC_DATE_DEBUT, OnEditDate) 
 
void xxxx::OnEditDate(NMHDR* pNMHDR, LRESULT* pResult)  {
char chaine[80];
CDateTimeCtrl* pCtrl = NULL;
 
LPNMDATETIMESTRING pNmDATE=reinterpret_cast<LPNMDATETIMESTRING>(pNMHDR); 
strcpy(chaine,pNmDATE->pszUserString);  // Ok, je recupere bien la saisie
 
CTime date(...); // Ok, je remplis correctement avec des fonctions perso
pCtrl=(CDateTimeCtrl*) GetDlgItem(IDC_DATE);
pCtrl->SetTime(&date);	
*pResult = 0;
}
Et la rien à faire, mon picker ré-affiche toujours la valeur d'avant édition.
Grrrr

J'ai essayé des ruses de sioux débutant :
UpdateData(FALSE);
UpdateData(TRUE);
pCtrl->SetFormat(NULL);
mais ça ne marche pas ...

Toute aide ou conseil sera vivement apprécié, merci d'avance !
Steph.