Overblog Suivre ce blog
Editer l'article Administration Créer mon blog

Présentation

  • : Romagny13 - Du .NET,du pur .NET
  • Romagny13 - Du .NET,du pur .NET
  • : Cycle de progression Faire (quelque chose qui marche) -> comprendre ce que l’on fait/comment cela marche -> pousser plus loin les notions
  • Contact

Recherche

Articles Récents

17 août 2007 5 17 /08 /août /2007 01:12
Quelques astuces
1 - operateur ternaire
// resultat = condition? valeur retour condition vraie : valeur retour condition fausse
            // ex: int
            int i=11;
            int nResult = (i > 10) ? i * 2 : i;
2 – System.Enum
   Priority priority = Priority.Normal;
            // exemple : retourne "Normal"
            string result = System.Enum.Format(typeof(Priority), priority, "D"); //G ou g renvoie le nom (ex:"Normal"),D ou d renvoie la valeur (ex "2")
            string name = System.Enum.GetName(typeof(Priority), priority);//retourne "Normal
            // retourne les noms dans un tableau de string
            string[] priorities = System.Enum.GetNames(typeof(Priority));
            bool isDefined = System.Enum.IsDefined(typeof(Priority),"High");// retourne true
            // ... voir les autres membres
        

public enum Priority
{
None = 0,
Low = 1,
Normal=2,
High = 3,
NotRemovable = 4
}

3 – Délégués
Appeler plusieurs methods avec un délégué
Récuypèrer la liste des méthodes à appeler grace à System.Delegate
       private delegate void doActionEventHandler();
        private doActionEventHandler doAction;
 
        private void Form1_Load(object sender, EventArgs e)
        {
            //doAction +=new doActionEventHandler(DoFirstAction);
            //doAction +=new doActionEventHandler(DoSecondAction);
            // OU (inference de type)
            doAction += DoFirstAction;
            doAction += DoSecondAction;
 
 
            System.Delegate[] delegatesOfDoAction = doAction.GetInvocationList();
 
          // appeler un delegue de maniere asynchrone , attention le delegue ne doit avoir qu'une seule cible dans ce cas
            doAction.BeginInvoke(null, null);
        }
 
        public void DoFirstAction()
        { }
        public void DoSecondAction()
        { }

Partager cet article

Repost 0
Published by Romagny13 - dans C 1.0- 2.0- 3.0
commenter cet article

commentaires