Pytania otagowane jako anonymous-methods


11
Anuluj subskrypcję anonimowej metody w C #
Czy można anulować anonimową metodę ze zdarzenia? Jeśli zasubskrybuję takie wydarzenie: void MyMethod() { Console.WriteLine("I did it!"); } MyEvent += MyMethod; Mogę anulować subskrypcję w ten sposób: MyEvent -= MyMethod; Ale jeśli zasubskrybuję za pomocą anonimowej metody: MyEvent += delegate(){Console.WriteLine("I did it!");}; czy można zrezygnować z tej anonimowej metody? Jeśli …


8
Metoda anonimowa w wywołaniu Invoke
Mamy trochę problemów ze składnią, w której chcemy anonimowo wywołać delegata w Control.Invoke. Wypróbowaliśmy wiele różnych podejść, ale bezskutecznie. Na przykład: myControl.Invoke(delegate() { MyMethod(this, new MyEventArgs(someParameter)); }); gdzie someParameter jest lokalna dla tej metody Powyższe spowoduje błąd kompilatora: Nie można przekonwertować metody anonimowej na typ „System.Delegate”, ponieważ nie jest to …

5
Dlaczego w języku C # anonimowa metoda nie może zawierać instrukcji yield?
Pomyślałem, że fajnie byłoby zrobić coś takiego (z lambdą zwracającą wydajność): public IList<T> Find<T>(Expression<Func<T, bool>> expression) where T : class, new() { IList<T> list = GetList<T>(); var fun = expression.Compile(); var items = () => { foreach (var item in list) if (fun.Invoke(item)) yield return item; // This is not …
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.