CA1009: Olay işleyicilerini doğru bildirin
TypeName |
DeclareEventHandlersCorrectly |
CheckId |
CA1009 |
Kategori |
Microsoft.Design |
Değişiklik kesiliyor |
Bölme |
Neden
Bir ortak veya korumalı olayı işleyen bir temsilci türü veya parametre adlarına dönmek doğru imzaya sahip değil.
Kural Tanımı
Olay işleyicisi yöntemi iki parametre alır.İlk türüdür Object ve 'gönderen' olarak adlandırılır.Bu olay nesnesidir.İkinci parametre türü: EventArgs ve 'e' olarak adlandırılır.Bu olay ile ilişkilendirilmiş olan verilerdir.Örneğin, bir dosyayı her açtığınızda olay oluşturulur, Olay verileri genellikle dosya adını içerir.
Olay işleyici yöntemlerine bir değer vermemelidir.C# programlama diliyle, bu dönüş türü gösterilir void.Bir olay işleyicisi, birden çok nesne birden çok yöntemleri çağırabilirsiniz.Yöntemleri bir değer döndürmek için izin verildi, her olay için birden fazla dönüş değerleri ortaya çıkabilecek ve yalnızca başlatıldığı son yöntem değeri kullanılabilir.
İhlalleri düzeltmek nasıl
Bu kuralı ihlal düzeltmek için imza, dönüş türü veya temsilci parametre adını düzeltin.Ayrıntılı bilgi için aşağıdaki örneğe bakın.
Uyarıları ne zaman
Uyarı Bu kuraldan bastırmak değil.
Örnek
Aşağıdaki örnek olaylarını işlemek için uygun olan bir temsilci gösterir.Bu olay işleyicisi tarafından çağrılan yöntemlerin tasarım yönergeleri belirtilen imza ile uyumlu.AlarmEventHandlertemsilci türünün adıdır.AlarmEventArgsOlay verileri için temel sınıfından türeyen EventArgs, ve holds alarm olay verisi.
Imports System
Namespace DesignLibrary
Public Delegate Sub AlarmEventHandler(sender As Object, e As AlarmEventArgs)
Public Class AlarmEventArgs
Inherits EventArgs
End Class
End Namespace
using System;
namespace DesignLibrary
{
public class AlarmEventArgs : EventArgs {}
public delegate void AlarmEventHandler(object sender, AlarmEventArgs e);
}
using namespace System;
namespace DesignLibrary
{
public ref class AlarmEventArgs : public EventArgs {};
public delegate void AlarmEventHandler(
Object^ sender, AlarmEventArgs^ e);
}
İlgili kuralları
CA2109: Görünen olay işleyicileri gözden geçirin