CSharp: AulaDemoDll.ClassDemo

From AdonaiMedrado.Pro.Br
Jump to: navigation, search
using System;
using System.Collections;
using System.Collections.Generic;
 
namespace AulaDemoDll
{
    public static class ClassDemo
    {
        public static void ExemploEvent()
        {
            System.Console.Clear();
            System.Console.Write("Iniciando usuário...");
            AulaDemoDll.NamespaceC.Usuario u = new AulaDemoDll.NamespaceC.Usuario(
                "csharp","senha");
            System.Console.WriteLine("OK");
 
            System.Console.Write("Configurando eventos");
            u.SucessoNoLogin += u_SucessoNoLogin1;
            u.SucessoNoLogin += new AulaDemoDll.NamespaceC.TratarSucessoNoLogin(u_SucessoNoLogin2);
            u.FalhaNoLogin += new AulaDemoDll.NamespaceC.TratarFalhaNoLogin(u_FalhaNoLogin);
            u.FalhaNoLogin += delegate(AulaDemoDll.NamespaceC.Usuario m) { System.Console.WriteLine("Falhou!!! Mas que feio!!!"); };
            u.FalhaNoLogin += (m) => { System.Console.WriteLine("Falhou!!! Perdedor!!! Errou novamente a senha do usuário " + m.Nome); };
            System.Console.WriteLine("OK");
 
            System.Console.WriteLine("Entrando modo login...");
            for (; ; )
            {
                string senha;
                System.Console.Write("\tSenha: ");
                System.Console.BackgroundColor = ConsoleColor.White;
                System.Console.ForegroundColor = ConsoleColor.White;
                senha = System.Console.ReadLine();
                System.Console.ResetColor();
                if (u.TentarLogar("csharp", senha))
                    break;
                else
                    System.Console.WriteLine("Login falhou!");
            }            
            System.Console.WriteLine("OK");
 
            System.Console.ReadKey();
        }
 
        static void u_FalhaNoLogin(AulaDemoDll.NamespaceC.Usuario u)
        {
            System.Console.WriteLine("Ops! :(");
        }
 
        static void u_SucessoNoLogin1(AulaDemoDll.NamespaceC.Usuario u)
        {
            System.Console.WriteLine("Parabéns!!!");
        }
        static void u_SucessoNoLogin2(AulaDemoDll.NamespaceC.Usuario u)
        {
            System.Console.WriteLine("Muito bom!!!");
        }
 
        public static void EstoqueZero(AulaDemoDll.NamespaceC.Produto p)
        {
            System.Console.WriteLine("=> Estoque Igual a Zero");
        }
        public static void ExemploDelegate()
        {
            System.Console.Clear();
            System.Console.Write("Iniciando produto...");
 
 
            //AulaDemoDll.NamespaceC.Produto p = new AulaDemoDll.NamespaceC.Produto(
            //    100, EstoqueZero);
 
            //AulaDemoDll.NamespaceC.Produto p = new AulaDemoDll.NamespaceC.Produto(
            //    100, delegate(AulaDemoDll.NamespaceC.Produto k) { System.Console.WriteLine("Epa!"); });            
 
 
            AulaDemoDll.NamespaceC.Produto p = new AulaDemoDll.NamespaceC.Produto(
                            100, (z) => { System.Console.WriteLine
                                ("Zerou!"); });
 
            System.Console.WriteLine("OK");
 
            System.Console.WriteLine("Vendendo...");
            p.Vender(101);
            System.Console.WriteLine("OK");
 
            System.Console.ReadKey();
        }
        public static void ExemploArrayList()
        {
            ArrayList al = new ArrayList();
            System.Console.Clear();
            System.Console.WriteLine("Demo SortedList");
            System.Console.Write("Adicionando elementos...");
            for(int i = 1; i<=12; i++)
                al.Add(new DateTime(2008,i,1).ToString("MMMM"));
            System.Console.WriteLine("OK");
 
            System.Console.WriteLine("Percorrendo elementos por valor...");
            foreach (string s in al)
            {
                System.Console.WriteLine(s);
            }
            System.Console.WriteLine("OK");
 
            System.Console.ReadKey();
        }
        public static void ExemploSortedList()
        {
            SortedList sl = new SortedList();
            System.Console.Clear();
            System.Console.WriteLine("Demo SortedList");
            System.Console.Write("Adicionando elementos...");
            sl.Add("Chave3", 123);
            sl.Add("Chave2", 456);
            sl.Add("Chave1", 789);         
            System.Console.WriteLine("OK");
 
            System.Console.WriteLine("Percorrendo elementos por valor...");
            foreach (int i in sl.Values)
            {
                System.Console.WriteLine(i);
            }
            System.Console.WriteLine("OK");
 
            System.Console.WriteLine("Percorrendo elementos por chave utilizando index...");
            foreach (string s in sl.Keys)
            {
                System.Console.WriteLine(sl[s]);
            }
            System.Console.WriteLine("OK");
 
            System.Console.ReadKey();
        }
 
    }
}