Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zdarzenie jest specjalnym rodzajem delegata multiemisji, który można wywołać tylko z poziomu klasy, w jakiej jest zadeklarowany. Kod klienta subskrybuje zdarzenie, podając odwołanie do metody, która powinna być wywoływana po wyzwoleniu zdarzenia. Te metody są dodawane do listy wywołań delegata za pomocą metod dostępu do zdarzeń, które przypominają metody dostępu do właściwości, z tą różnicą, że metody dostępu do zdarzeń są nazwane add
i remove
. W większości przypadków nie trzeba dostarczać niestandardowych metod dostępu do zdarzeń. Jeśli w kodzie nie podano żadnych niestandardowych metod dostępu do zdarzeń, kompilator doda je automatycznie. Jednak w niektórych przypadkach może być konieczne zapewnienie zachowania niestandardowego. Jeden z takich przypadków jest pokazany w temacie How to implement interface events (Jak zaimplementować zdarzenia interfejsu).
W poniższym przykładzie pokazano, jak zaimplementować niestandardowe metody dostępu do dodawania i usuwania zdarzeń. Mimo że można zastąpić dowolny kod wewnątrz metod dostępu, zalecamy zablokowanie zdarzenia przed dodaniem lub usunięciem nowej metody obsługi zdarzeń.
event EventHandler IDrawingObject.OnDraw
{
add
{
lock (objectLock)
{
PreDrawEvent += value;
}
}
remove
{
lock (objectLock)
{
PreDrawEvent -= value;
}
}
}
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: