taoetc
Messages postés346Date d'inscriptionlundi 8 septembre 2003StatutMembreDernière intervention 3 septembre 2007
-
21 juil. 2005 à 14:39
taoetc
Messages postés346Date d'inscriptionlundi 8 septembre 2003StatutMembreDernière intervention 3 septembre 2007
-
21 juil. 2005 à 16:35
Bonjour,
voila mon probleme,
j'ai créé un controle à parte de deux autres controles existants, pour créer ma propre gestion ( donc un textbox ,et un datetimepicker), jusque la rein d'exceptionnel.
Mon probleme est le suivant : j'ai créé un événement relatif à ce controle ( lorsque la valeur de date change), mais si , lorsque j'implémente mon controle, je ne rajoute pas une fonction lié à cet événement, cela plante.
Je ne sais pas trop comment faire pour éviter cela.
Lutinore
Messages postés3245Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 21 juil. 2005 à 15:35
J'ai du mal à tout comprendre aujourd'hui : ) Oui mais la je vois un délégué pas un event !? Faut tester aussi si l'event est null avant de l'appeler et on peut aussi mettre une methode virtuel OnMyEvent.
taoetc
Messages postés346Date d'inscriptionlundi 8 septembre 2003StatutMembreDernière intervention 3 septembre 20073 21 juil. 2005 à 15:12
Oui, c vrai , en relisant, c'est pas hyper clair.
Au fait, je n'ai pas vraiment dérivé un controle, je me suis refait un controle date avec dedans un controle datettimepicket et un controle textbox ( j'ai trouvé cela plus simple que d'essayer de modifier le controle datetimepicker d'origine).
donc, j'ai fait mon nouveau user controle tout beau et,avec ce nouveau controle, j'associe un événement Value qui est déclenché quand la valeur de la date change, la , c'est logique.
public
delegate
void ValueChanged();
public
class MaDate : System.Windows.Forms.UserControl
{
.....
et à pluseurs endroit dans ce controle , je déclenche l'événement si la date a changé :
valuechanged();
}
Le probleme est que , si je ne met pas la fonction interceptant l'événement dans les form qui utilise mon controle date , ca plante.
je suis obligé de faire un :
madate.valuechanged += new valueChanged( madate_valuechanged);
public void madate_valuechanged()
{