private void cardpicbox_MouseEnter(object sender, EventArgs e) { showtag = true; Refresh(); Mydelegate dg = new Mydelegate(owner.showCardInfo); dg(cardid); }
public static void Main(string[] args) { Mydelegate del = new Mydelegate (myfunction); del (5); Mydelegate del1 = delegate(int x){ // Anonymous type Console.WriteLine ("Hello World!"); }; del1 (6); }
public static void Main(string[] args) { Mydelegate mydelegate=delegate(int num){ Console.WriteLine("this is an anonymous delegate method {0}",num); }; mydelegate(9); mydelegate = new Mydelegate (EnteredNumber); mydelegate(6); }
static void Main(string[] args) { Mydelegate del1 = Double; Mydelegate del2 = new Mydelegate(Double); Mydelegate del3 = delegate (int x) { return 2 * x; }; Mydelegate del4 = (x) => { return 2 * x; }; Mydelegate del5 = x => 2 * x; //karch dzevov Action action1 = () => { Console.WriteLine("Hello"); }; //void aranc argument kam Action action12 = () => Console.WriteLine("Hello"); //void aranc argument kam action1(); Action<double> del6 = x => { }; Func<double> del = () => 1.0; Func<double, int> del22 = x => 2 * (int)x;//double stanum e veradarcnum e int }
static void Main(string[] args) { string zone = ""; int price = 0; Mydelegate f = calculate; while (zone != "exit") { Console.WriteLine("Enter Zone"); zone = Console.ReadLine(); if (zone == "exit") { break; } Console.WriteLine("Enter Price"); price = Convert.ToInt32(Console.ReadLine()); switch (zone) { case "zone1": Console.WriteLine(f(price, 25)); continue; case "zone2": Console.WriteLine(f(price, 25 + 12)); continue; case "zone3": Console.WriteLine(f(price, 8)); continue; case "zone4": Console.WriteLine(f(price, 25 + 4)); continue; case "exit": continue; default: Console.WriteLine("Invalid Zone "); continue; } } }
private void bt_dangnhap_Click(object sender, EventArgs e) { string mssv = tb_mssv.Text; string pass = bll.getPass(mssv); InfoSV sv = bll.getInfoSV(mssv); if ((tb_matkhau.Text.Trim()) == pass) { Form1 f1 = new Form1(); Mydelegate del = new Mydelegate(f1.setNameSV); del(sv); f1.Show(); this.Hide(); } else { MessageBox.Show("Tên đăng nhập hoặc mật khẩu sai"); } }
static void Main(string[] args) { //实例化一个委托 Mydelegate m1 = new Mydelegate(MyFangfa); //异步调用两个方法 //方法一: //string result= m1("hans"); // Console.WriteLine(result); //方法二: // IAsyncResult result = m1.BeginInvoke("hans", null, null); //第一个null 是回调函数名称,第二个null 是回调函数的 object参数 string data = m1.EndInvoke(result); //endinvoke是会线程阻塞的,保证其他线程执行完,才会执行后面 Console.WriteLine(data); Console.ReadLine(); }
static void Main(string[] args) { Myclass myclass = new Myclass(); Mydelegate mydelegate = null; //mydelegate += myclass.CallMethod1; //mydelegate += myclass.Calldelegate2; //mydelegate += myclass.Calldelegate3; //mydelegate(); //mydelegate -= myclass.Calldelegate2; //mydelegate(); Mydelegate newMydelegate = new Mydelegate(myclass.CallMethod1); Mydelegate mydelegate1 = new Mydelegate(myclass.Calldelegate2); Mydelegate mydelegate2 = new Mydelegate(myclass.Calldelegate3); mydelegate = newMydelegate + mydelegate1 + mydelegate2; Console.WriteLine("Enter number from 1-7"); string chois = Console.ReadLine(); switch (chois) { case "1": mydelegate.Invoke(); break; case "2": mydelegate1.Invoke(); break; case "3": mydelegate2.Invoke(); break; case "5": Mydelegate Mydelegate3 = mydelegate - mydelegate1; Mydelegate3(); break; } }
static void Main(string[] args) { List <string> list = new List <string>(); DataRead dataRead = new DataRead(); DataOperate dataOperate = new DataOperate(); Mydelegate mydelegate = new Mydelegate(dataRead.ReadSubjectName); mydelegate += dataRead.ReadStudentFirstName; mydelegate += dataRead.ReadStudentLastName; foreach (Mydelegate item in mydelegate.GetInvocationList()) { list.Add(item()); } var builder = new ConfigurationBuilder(); builder.SetBasePath(Directory.GetCurrentDirectory()); builder.AddJsonFile("appsettings.json"); var config = builder.Build(); string connectionString = config.GetConnectionString("DefaultConnection"); DbContextOptionsBuilder dbContextOptionsBuilder = new DbContextOptionsBuilder(); var optionsBuilder = new DbContextOptionsBuilder <ApplicationContext>(); var options = optionsBuilder .UseSqlServer(connectionString) .Options; Console.Read(); dataOperate.Operation(options, list[0], list[1], list[2]); }
public EventsAndDelegatesv3() { Mydelegate mydelegate, mydelegate2, mydelegate3, mydelegate4; mydelegate = new Mydelegate(Method1); mydelegate2 = new Mydelegate(Method2); mydelegate3 = mydelegate + mydelegate2; mydelegate4 = mydelegate - mydelegate2; mydelegate.Invoke("AAA"); mydelegate2("BBB"); mydelegate3("CCC"); mydelegate4("DDD"); mydelegate4 = mydelegate3 - mydelegate; mydelegate4("EEE"); mydelegate4 = mydelegate3 - mydelegate2; mydelegate4("FFF"); Console.ReadLine(); }
public static void RunSynchronizedTest() { Mydelegate md; md = null; md += new Mydelegate(() => { Console.WriteLine("1"); }); md += new Mydelegate(() => { Console.WriteLine("2"); }); md += new Mydelegate(() => { Console.WriteLine("4"); }); md.Invoke(); md = null; //md.Invoke(); ClassA a = new ClassA(); ClassA b = new ClassA(); Thread t1 = new Thread(new ThreadStart(() => { a.ThearTest("1"); })); Thread t2 = new Thread(new ThreadStart(() => { a.ThearTest("2"); })); Thread t3 = new Thread(new ThreadStart(() => { b.ThearTest("3"); })); Thread t4 = new Thread(new ThreadStart(() => { b.ThearTest("4"); })); t1.Start(); t2.Start(); t3.Start(); t4.Start(); Console.WriteLine("Stort"); }
public static void Method2(Mydelegate <string> d) { d("123456"); }
private void panel1_MouseEnter(object sender, EventArgs e) { showtag = true; Refresh(); Mydelegate dg = new Mydelegate(owner.showCardInfo); dg((int)Tag); }
static void Main(string[] args) { //xml ReadXmlFile("name", "acending", "id", "2", '>'); //reflection //Rreflection(); //students Console.ForegroundColor = ConsoleColor.Magenta; List <Student> listStud = new List <Student>(); Student s = new Student("1231", "sarit", 45, 1); Student s1 = new Student("1111", "dasi", 77778, 2); Student s2 = new Student("1232221", "shoshi", 7897979, 1); Student s3 = new Student("888", "nechama", 45646546, 1); Student s4 = new Student("99", "sarita", 213131, 3); //test test test1 = new test("c#", 100); test test2 = new test("sql", 90); test test3 = new test("c++", 70); s.AddTest(test1); s.AddTest(test2); s.AddTest(test3); Console.BackgroundColor = ConsoleColor.DarkBlue; Console.ForegroundColor = ConsoleColor.White; //ienumurable//enamurator s.printTest(); Console.ForegroundColor = ConsoleColor.Magenta; Console.BackgroundColor = ConsoleColor.Black; //teachers Teacher t = new Teacher("315013565", "moria", 035793876, 800000); Teacher t1 = new Teacher("2222222", "sani", 84984984, 9600); Console.ForegroundColor = ConsoleColor.DarkYellow; Console.WriteLine(t); Console.WriteLine(t1); Console.ForegroundColor = ConsoleColor.Gray; Teacher t2 = t + t1; Console.WriteLine(t2); listStud.Add(s); listStud.Add(s1); listStud.Add(s2); listStud.Add(s3); listStud.Add(s4); //print students foreach (Student student in listStud) { Console.ForegroundColor = ConsoleColor.Green; student.printDetails(); //Console.WriteLine("id {0} name {1} phone {2} grade {3}", student.Id, student.Name, student.Phone, student.Grade); for (int i = 0; i < student.Test.Length && student.Test[i].Name != null; i++) { Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine(" subject " + student.Test[i].Name + " mark " + student.Test[i].Mark); } } Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("the studets sum is {0} ", Student.cnt); Console.ForegroundColor = ConsoleColor.Magenta; //edit details student Console.WriteLine("the studet is before {0} ", s); s.UpdateBaseDetails("sari", 054859755); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("the studet is after {0} ", s); Console.ForegroundColor = ConsoleColor.DarkMagenta; printStudents(listStud); Console.ForegroundColor = ConsoleColor.Red; //delegate Console.WriteLine("*****************************delegate************"); Mydelegate d = new Mydelegate(s.printDetails); Mydelegate d1 = new Mydelegate(s.printTest); d += d1; d(); Console.Read(); // Person p = new Person(); }
private void CheckedChanged(object sender, EventArgs e) { lbIcono.Text = ((RadioButton)sender).Tag + ""; operacion = (Mydelegate)hashtable[((RadioButton)sender).Text]; }
private void button1_Click(object sender, EventArgs e) { Mydelegate obj = new Mydelegate(GetData1); obj("peter"); }
public Class1() { myDelegate = new Mydelegate(SayHello); }
bool GetGameoverStatusAndSave(bool _isInGame, Mydelegate _saveBehaviour) { // Logiche di raccolta dati gameover _saveBehaviour(); return(true); }
public static void mymethod(Mydelegate b, int a) { a += 10; b(a); }
public StateMonitor() { SomethingHappened += new Mydelegate(monitor); _state = States.initial; }
public static void Main(string[] args) { var users = new List <CuentaBancaria>(); int opc1 = 0; string numTitular = ""; double BalanceCuenta = 0; do { Console.WriteLine(menu1()); Console.WriteLine("Digite la opcion deseada: "); opc1 = Int32.Parse(Console.ReadLine()); switch (opc1) { case 1: Console.WriteLine("Ingrese una nueva cuenta bancaria....."); Console.WriteLine("ingrese nombre del titular de la cuenta: "); numTitular = Console.ReadLine(); Console.WriteLine("Digite el saldo a ingresar en la cuenta: "); BalanceCuenta = Int32.Parse(Console.ReadLine()); users.Add(new CuentaBancaria(numTitular, BalanceCuenta)); break; case 2: Accountmanagment = showAccounts; Accountmanagment.Invoke(users); break; case 3: //Delegate Explicito Accountmanagment = showAccounts; Accountmanagment += showSalary; Accountmanagment.Invoke(users); break; case 4: //Action Console.WriteLine("---------"); Action <List <CuentaBancaria> > MyAccountAction = (maa) => { maa.ForEach(account => { Console.WriteLine($"Nombre: {account._name}, Saldo: ${account._ActualBalance}"); }); }; MyAccountAction += maas => { double salary = 0; maas.ForEach(account => { salary += account._ActualBalance; }); Console.WriteLine($"Suma de salarios: ${salary}"); }; MyAccountAction.Invoke(users); MyAccountAction = voc => { voc.ForEach(titular => { if (titular._name[0].Equals('a') || titular._name[0].Equals('e') || titular._name[0].Equals('i') || titular._name[0].Equals('o') || titular._name[0].Equals('u')) { Console.WriteLine("\n inicia con vocal.."); Console.WriteLine($"Nombre: {titular._name}, Saldo: ${titular._ActualBalance}"); } else { Console.WriteLine(" "); } }); }; MyAccountAction.Invoke(users); break; case 5: Console.WriteLine("Saliendo del menu....."); break; } } while (opc1 != 5); }
public EventsAndDelegatesv4() { Mydelegate mydeledate = new Mydelegate(Method1); mydeledate(); }
public static void Main(string[] args) { #region Interface //Gode videoer hvis selv vil lave lidt. //God video1: https://www.youtube.com/watch?v=jh4y8HzGqCQ //God Video2(fortsættelse fra video1): https://www.youtube.com/watch?v=TZi86NDFwNU //Et Interface er lidt som en kontrakt //dem der har interfacet (Worker og Manager klasserne) //LOVER at implementer den metode der står i interfacet. //Både Worker og Manager implementerer IWorker interfacet //så begge klasser har metoden GetSalary(). Worker worker1 = new Worker(40, 130); Worker worker2 = new Worker(40, 130); Worker worker3 = new Worker(40, 230); Manager leder1 = new Manager(40, 330); Manager leder2 = new Manager(40, 430); Manager leder3 = new Manager(40, 300); //fordi både Worker og Manager klasserne implementere IWorker interfacet //kan vi putte dem sammen på en liste af IWorkers List <IWorker> Personer = new List <IWorker>() { worker1, worker2, worker3, leder1, leder2, leder3 }; //Working(Personer); #endregion #region Delegates //God Video: https://www.youtube.com/watch?v=9K9Aq7die7Q //En Delegate er en "function-pointer", d.v.s. den refererer/peger på en metode //En delegates signatur skal matche den metode den peger på. //Da delegaten på linje 9 er void, så skal den også pege på en metode //der retunere void. Det samme gælder for parameteren. //Vi siger at del skal pege på/referere Void metoden Foo() i delegate methods //Vi kan nu kalde Del som en almindelig metode med del(); Mydelegate del = Foo; //del(); //Nu siger vi at del skal pege på Goo istedet for //Når vi nu kalder del() eller del.Invoke(); //vil den kalde Goo metoden del = Goo; //del.Invoke(); //Her under "Chainer" vi en delegate //Først siger vi at del peger på Foo //derefter kan vi sige at del OGSÅ peger på Goo //Ved at bruge += kan vi sige at del skal pege på mange metoder //hvis man vil. del = Foo; del += Goo; del += Goo; del += Goo; del += Goo; del += Foo; //del -= Goo: det her vil fjerne DEN SIDSTE reference til Goo //så de 3 FØRSTE Goo vil stadig være der //del.Invoke(); //God Video: https://www.youtube.com/watch?v=qmdziLz51w4 //lambda expression, den sidste type i Func er altid returtypen. op til 16 parametre Func <int, bool> Func1 = input => input > 5; //Console.WriteLine(Func1(5)); //Anonymous method: Bemærk at på højre side har metoden ikke noget navn ligesom f.eks Metode(); Func <int, bool> FuncAM = delegate(int input) { return(input > 5); }; //Console.WriteLine(Func1(5)); //Action retuner altid Void(hover over Action), kan holde op til 16 parametre. Action <string, int> Ac1 = (inputstreng, inputtal) => Console.WriteLine(inputstreng + inputtal); Ac1("test af Action ", 007); //Predicate retuner altid bool (hover over Predicate), tager kun mod 1 parameter Predicate <string> Prd1 = inputstreng => inputstreng == ""; Console.WriteLine(Prd1("fx. navn")); #endregion #region LINQ //God Video: https://www.youtube.com/watch?v=Z6YWWRUcJis //LINQ Lambda - worker-navnet kan man bare skifte ud, det er bare en variabel. //Der kunne også stå x => x.gender == "Mand"; Den ved at der er tale om en liste af workers objekter. var LambdaLinqList = Worker.GetAllWorkers().Where(worker => worker.gender == "mand"); foreach (var item in LambdaLinqList) { // Console.WriteLine("LambdaLinqList:" + item.gender); } //LINQ SQlformat - workers-navnet kan man bare skifte ud. var SQlLinkList = from workers in Worker.GetAllWorkers() where workers.gender == "Dame" select workers; foreach (var item in SQlLinkList) { // Console.WriteLine("LambdaLinqList:" + item.gender); } #endregion }
static string AddText(Mydelegate mydelegate, int value) { return(String.Format($"{mydelegate(value, "and")} - {value}")); }