Usercontrol + évènements + propriétés en format "liste" [Résolu]

Messages postés
216
Date d'inscription
jeudi 30 janvier 2003
Statut
Membre
Dernière intervention
12 avril 2017
- - Dernière réponse : cs_thebigboss
Messages postés
216
Date d'inscription
jeudi 30 janvier 2003
Statut
Membre
Dernière intervention
12 avril 2017
- 19 sept. 2010 à 21:10
Bonjour,

j'ai 2 questions pour le prix d'une.

Question N°1:

Je suis en train de me créer un usercontrol. Celui-ci contient une variable qui peut-être lue par l'utilisateur du usercontrol. J'ai donc créé une Propriétés (get)

public int Value
{
get {return _value;}
}


Maintenant ce que j'aimerai c'est que l'utilisateur puisse s'abonner à un évènement lorsque ma variable change de valeur.
un truc du genre:
myUserControl.ValueChanged(object sender, EventArgs e)


Question n°2:

Est-il possible d'avoir une liste déroulante dans une propriété d'un usercontrol?
Du même type que ce que propose la propriété "FormBorderStyle".

Merci d'avance.

Nico

A+

*******************************************
SharpDevelop est mon ami! CSharpFR.com aussi!!!!!!!!!
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
382
Date d'inscription
samedi 22 janvier 2005
Statut
Membre
Dernière intervention
13 août 2011
7
3
Merci
biensur que tu peux , d'ailleur on peut tout faire , sauf la cuisine , et j'ai faim la !!

donc pour te repondre :

question 1:

rajoute une event a ton user controle

public event EventHandler OnValueChanged;


la l'utilisateur de l'usercontrol pourra s'y abonner avec

....OnValueChanged += new EventHandler(DayView_OnValueChanged);


et dans la propriété

        public int Value
        {
            get { return _value; }
            private set // je met private car je ne veux pas qu'elle soit modifié en dehors du controls
            {
                _value = value;

                if (OnValueChanged != null)
                    OnValueChanged(this, EventArgs.Empty);
            }
        }


question 2:

pour ta liste deroulante exemple :

en dehors de la class de l'user controls
public enum ElementsDeListe
{
one,
two,
tree
}



dans la class de ton usercontrol

public ElementsDeListe State
{
get;
set;
}



et tu peux faire comme dans l'exemple 1 pour l'evenement

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 144 internautes nous ont dit merci ce mois-ci

Commenter la réponse de yohan49
Messages postés
216
Date d'inscription
jeudi 30 janvier 2003
Statut
Membre
Dernière intervention
12 avril 2017
2
0
Merci
Merci beaucoup, les deux réponses marchent impec!!!!


A+

*******************************************
SharpDevelop est mon ami! CSharpFR.com aussi!!!!!!!!!
Commenter la réponse de cs_thebigboss