[Dotnet C++]Composant Dayview
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 :
Code:
dayView1.ResolveAppointments += new Calendar.ResolveAppointmentsEventHandler(this.dayView1_ResolveAppointments);
Et voici la fonction :
Code:
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;
} |
Ce que j'ai �crit en C++ :
Code:
this->dayView1->ResolveAppointments += gcnew Calendar::ResolveAppointmentsEventHandler(this->dayView1_ResolveAppointments);
Code:
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;
} |
Mais le compilateur me sort les erreurs suivantes :
Code:
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é ========== |
Je gal�re vraimment sur le coup, est ce quelqu'un peut m'aider ? Merci