Bonjour a tous,
Je continue de d�velopper mon application (en m�me temps j'apprends) et je suis une nouvelle fois bloquer dans l'utilisation d'un composant externe.
J'ai r�cup�r� le composant dayview ( http://www.codeproject.com/cs/miscct...dardayview.asp ) avec son exemple en C# sauf que mon application est en C++. Je suis donc parti de l'exemple en C# et tenter de l'int�grer dans mon application.
Je bloque sur le moment ou une fonction va faire afficher tous les �l�ment du calendrier. Apr�s la cr�ation d'un �l�ment je dois appeller ResolveAppointmentsEventHandler en C# �a donne :
Et voici la fonction :
Code : S�lectionner tout - Visualiser dans une fen�tre � part dayView1.ResolveAppointments += new Calendar.ResolveAppointmentsEventHandler(this.dayView1_ResolveAppointments);
Ce que j'ai �crit en C++ :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11 private void dayView1_ResolveAppointments(object sender, ResolveAppointmentsEventArgs args) { List<Appointment> m_Apps = new List<Appointment>(); foreach (Appointment m_App in m_Appointments) if ((m_App.StartDate >= args.StartDate) && (m_App.StartDate <= args.EndDate)) m_Apps.Add(m_App); args.Appointments = m_Apps; }
Code : S�lectionner tout - Visualiser dans une fen�tre � part this->dayView1->ResolveAppointments += gcnew Calendar::ResolveAppointmentsEventHandler(this->dayView1_ResolveAppointments);Mais le compilateur me sort les erreurs suivantes :
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
16
17 private: void dayView1_ResolveAppointments(System::Object^ sender, Calendar::ResolveAppointmentsEventArgs^ args) { List<Appointment^> m_Apps = gcnew List<Appointment^>(); Appointment^ m_App = gcnew Appointment(); for each (m_App in m_Appointments) { if ((m_App->StartDate >= args->StartDate) && (m_App->StartDate <= args->EndDate)) m_Apps.Add(m_App); } args->Appointments = m_Apps; }
Je gal�re vraimment sur le coup, est ce quelqu'un peut m'aider ? Merci
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
16
17
18
19
20
21
22
23
24
25
26 ------ Début de la génération : Projet : EPLG, Configuration : Debug Win32 ------ Compilation en cours... Tache_calendar.cpp c:\downloads\eplg\eplg\Tache_calendar.h(51) : error C3867: &'EPLG::Tache_calendar::dayView1_ResolveAppointments' : liste d'arguments manquante dans l'appel de fonction ; utilisez 'EPLG::Tache_calendar::dayView1_ResolveAppointments' pour créer un pointeur vers membre c:\downloads\eplg\eplg\Tache_calendar.h(51) : error C3350: 'Calendar::ResolveAppointmentsEventHandler' : un constructeur délégué attend 2 argument(s) c:\downloads\eplg\eplg\Tache_calendar.h(235) : error C2664: 'Calendar::ResolveAppointmentsEventArgs::Appointments::set' : impossible de convertir le paramètre 1 de 'System::Collections::Generic::List<T>' en 'System::Collections::Generic::List<T> ^' with [ T=Calendar::Appointment ^ ] Aucun opérateur de conversion défini par l'utilisateur disponible, ou Aucun opérateur de conversion définie par l'utilisateur disponible qui puisse effectuer cette conversion, ou l'opérateur ne peut pas être appelé EPLG.cpp c:\downloads\eplg\eplg\Tache_calendar.h(51) : error C3867: &'EPLG::Tache_calendar::dayView1_ResolveAppointments' : liste d'arguments manquante dans l'appel de fonction ; utilisez 'EPLG::Tache_calendar::dayView1_ResolveAppointments' pour créer un pointeur vers membre c:\downloads\eplg\eplg\Tache_calendar.h(51) : error C3350: 'Calendar::ResolveAppointmentsEventHandler' : un constructeur délégué attend 2 argument(s) c:\downloads\eplg\eplg\Tache_calendar.h(235) : error C2664: 'Calendar::ResolveAppointmentsEventArgs::Appointments::set' : impossible de convertir le paramètre 1 de 'System::Collections::Generic::List<T>' en 'System::Collections::Generic::List<T> ^' with [ T=Calendar::Appointment ^ ] Aucun opérateur de conversion défini par l'utilisateur disponible, ou Aucun opérateur de conversion définie par l'utilisateur disponible qui puisse effectuer cette conversion, ou l'opérateur ne peut pas être appelé Génération de code en cours... Le journal de génération a été enregistré à l'emplacement "file://c:\Downloads\EPLG\EPLG\Debug\BuildLog.htm" EPLG - 6 erreur(s), 0 avertissement(s) ========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========
Partager