SORU
29 Aralık 2011, PERŞEMBE


Özel EventHandler vs EventHandler<EventArgs>

Son zamanlarda ise bu kod arasında anlamlı bir fark olup olmadığını merak ediyorum:

public event EventHandler<MyEventArgs> SomeEvent;

Ve bu:

public delegate void MyEventHandler(object sender, MyEventArgs e);
public event MyEventHandler SomeEvent;

İkisi de aynı şeyi yapmak için herhangi bir fark edemedik. En sınıflar olduğunu fark ettik rağmen .NET Çerçeve olaylar için özel bir olay işleyicisi temsilci. Bunun için özel bir nedeni var mı?

CEVAP
29 Aralık 2011, PERŞEMBE


Haklısın, aynı şeyi yapıyorlar. Bu nedenle, muhtemelen daha net ve daha az yazmak gerekir, çünkü ikincisi üzerinde eski tercih etmelisiniz.

En çok sebebi .NET Çerçeve sınıfları delegeler jenerik kestirme sözdizimi izin () sürüm 2.0 tanıtıldı önce yazılmış olmasıdır işleyicisi kendi özel olay var. Örneğin, Win kütüphanelerin hemen hemen tüm jenerik önce yazılmış, ve o günlerde, ikinci form oldusadeceşeyler yapmanın bir yolu.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MandMEvangelists

    MandMEvangel

    28 Ocak 2008
  • MrMimoB

    MrMimoB

    11 NİSAN 2011
  • Professor Messer

    Professor Me

    27 NİSAN 2007