public static void Main()
    {
        Console.WriteLine ("Se inicia el programa");

        // Se crea una objeto de la clase Programa
        Programa objPrograma = new Programa ();

        // Se crea un objeto de el tipo delegado y se le añade un método. No importa si el método es de
        // un objeto de la propia clase.
        TipoDelegado objDelegado = new TipoDelegado (objPrograma.Metodo1);

        // Se añade al objeto delegado un método, ahora el objeto delegado tendrá 2 métodos añadidos.
        // Al añadir un primer método a un delegado se puede usar el operador de asignación '=' pero
        // si quisiéramos añadir otro método se tiene que usar el operador '+=' , como lo siguiente.
        objDelegado += new TipoDelegado (objPrograma.Metodo2);

        Console.WriteLine ("Se llamará al objeto delegado con los métodos ya asignados");
        objDelegado ();

        Console.WriteLine ("Se llamará al objeto delegado después de quitar Metodo2");
        // Quitar el método 'Metodo2' y luego llamar al objeto delegado
        objDelegado -= new TipoDelegado (objPrograma.Metodo2);
        objDelegado ();

        // Se puede añadir el mismo método más de una vez
        Console.WriteLine ("Se añade el Metodo1, que ya se añadió");
        objDelegado += new TipoDelegado (objPrograma.Metodo1);
    }
示例#2
0
文件: Program.cs 项目: mgjc/gii-3
        public void ATrabajar(TipoDelegado mideleg)
        {
            int i;

            for (i = 0; i < 500; i++)
            {
                System.Threading.Thread.Sleep(1); //Hacemos el trabajo
                switch (i)
                {
                case 125:
                    PocentajeHecho = 25;
                    mideleg(PocentajeHecho);
                    break;

                case 250:
                    PocentajeHecho = 50;
                    mideleg(PocentajeHecho);
                    break;

                case 375:
                    PocentajeHecho = 75;
                    mideleg(PocentajeHecho);
                    break;
                }
            }
        }