shadow1779
Messages postés706Date d'inscriptionmercredi 17 novembre 2004StatutMembreDernière intervention29 septembre 2013
-
20 juil. 2010 à 17:38
cs_coq
Messages postés6351Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014
-
24 juil. 2010 à 11:39
Bonjour a tous,
J'ai un petit soucis d'erreur en utilisants des evenènements et j'aimerai votre aide la dessus:
-j'ai un programme composé de deux forms et un user control
-le form principal en appel un second, et le second charge l'user control
lorsqu'une action donnée est réalisée dans l'user control, un evenement est déclanché pour l'envoyer dans le form enfant (componentForm)
lorsque le buffer de cet usercontrol (sous forme de List<> lui aussi) est modifié (quand il a recu les infos de l'event précédent), il déclenche un second event
le form principal recoit a son tour la liste et la traite...
Erreur 1 (sur l'userControl)
Accessibilité incohérente : le type de paramètre 'System.Collections.Generic.List<devInstaller.Actions>' est moins accessible que le délégué 'devInstaller.createFile.nouvelElementEventHandler'
C:\Users\Shadow\documents\visual studio 2010\Projects\devInstaller\devInstaller\createFile.cs
Erreur 2 (sur le second form)
Accessibilité incohérente : le type de paramètre 'System.Collections.Generic.List<devInstaller.Actions>' est moins accessible que le délégué 'devInstaller.addComponentForm.newElementsEventHandler'
C:\Users\Shadow\documents\visual studio 2010\Projects\devInstaller\devInstaller\addComponentForm.cs
Pas d'erreur sur l'event du form principal
Ci joint la déclaration de l'event (la ou l'erreur est notifiée);
Usercontrol:
public event nouvelElementEventHandler nouvelElement;
public delegate void nouvelElementEventHandler(List actions);
Second form:
public event newElementsEventHandler new_Elements;
public delegate void newElementsEventHandler(List buffer);
et l'abonnements aux differents events(ou il n'y a pas d'erreur)
// form principal
addComponentForm component = new addComponentForm();
component.new_Elements += new devInstaller.addComponentForm.newElementsEventHandler(this.updateTreeView);
// second form
createFile creerFichier = new createFile();
creerFichier.new_Element += new devInstaller.createFile.nouvelElementEventHandler(this.chargerDonnees);
panelComponent.Controls.Add(creerFichier);
Pourriez vous m'indiquer ou me donner une piste sur mon erreur.
cs_coq
Messages postés6351Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 24 juil. 2010 à 11:39
Bonjour,
L'event et le delegate sont public, et je suppose que la classe qui les exposent l'est aussi.
Le type "Actions" doit donc lui aussi posséder une niveau d'accessibilité public, ce qui n'est apparemment pas le cas, d'après le message d'erreur.