コード例 #1
0
 public void RaiseEvent(string name)
 {
     for (int i = 0; i < EventTable[name].Count; i++)
     {
         EventListner listner = EventTable[name][i];
         listner.Method();
         if (listner.IsSingleShot)
         {
             EventTable[name].Remove(listner);
         }
     }
 }
コード例 #2
0
    public void AddListener(string name, EventListner listner)
    {
        if (!EventTable.ContainsKey(name))
        {
            EventTable.Add(name, new List <EventListner>());
        }

        if (EventTable[name].Contains(listner))
        {
            return;
        }

        EventTable[name].Add(listner);
    }
コード例 #3
0
        void VendreOeuvre()
        {
            Conservateur cons    = new Conservateur();
            EventListner listner = new EventListner(cons);


            ressayer7 : Console.WriteLine("Saisir ID oeuvre a vendre");
            string IDoeuvre_vendre = Console.ReadLine();

            if ((gal.TrouveOeuvre(IDoeuvre_vendre) == false))
            {
                Console.WriteLine("ID ouevre inexistant");
                goto ressayer7;
            }

            //saisie de prix payee
            double nvprixpaye;

            ressayer8 : try
            {
                Console.WriteLine("Saisir prix payee pour l'oeuvre ");
                nvprixpaye = double.Parse(Console.ReadLine());
            }
            catch (FormatException)
            {
                Console.WriteLine("prix paye doit etre numerique");
                goto ressayer8;
            }

            bool test_vente = gal.VendreOeuvre(IDoeuvre_vendre, nvprixpaye);

            Console.WriteLine("comission va etre efacee");
            cons.effacerCommission();



            if (test_vente == true)
            {
                Console.WriteLine("vente completee");
            }
            else
            {
                Console.WriteLine("vente echouee");
            }

            //***************DETACHEMENT D'EVENEMENT*********
            Console.WriteLine("detachement d'evenement");
            listner.detacher();
        }
コード例 #4
0
    public static void Main(string[] args)
    {
        var broadcaster = new EventBroadcaster();
        var listners    = new List <EventListner>();

        for (int i = 1; i < 10; i++)
        {
            var listner = new EventListner(i.ToString(CultureInfo.InvariantCulture));
            listner.ListenTo(broadcaster);
            listners.Add(listner);
        }
        broadcaster.DoLongRunningOperationAndRaiseFinishedEvent();
        Console.WriteLine("Waiting for operation to complete");
        Console.ReadLine();
    }
コード例 #5
0
ファイル: EventObject.cs プロジェクト: akil03/bx
 public void Add(EventListner listner)
 {
     events.Add(listner);
 }
コード例 #6
0
ファイル: EventObject.cs プロジェクト: akil03/bx
 public void Remove(EventListner listner)
 {
     events.Remove(listner);
 }