CSharp: AulaDemoDll.ClassDemo
From AdonaiMedrado.Pro.Br
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(); } } }