Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto automaticamente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale
Questo argomento non è stato ancora valutato - Valuta questo argomento

Classe EventInfo

Individua gli attributi di un evento e consente di accedere ai relativi metadati.

Spazio dei nomi:  System.Reflection
Assembly:  mscorlib (in mscorlib.dll)
[SerializableAttribute]
[ComVisibleAttribute(true)]
[ClassInterfaceAttribute(ClassInterfaceType.None)]
[PermissionSetAttribute(SecurityAction.InheritanceDemand, Name = "FullTrust")]
public abstract class EventInfo : MemberInfo, 
	_EventInfo

Il tipo EventInfo espone i seguenti membri.

  NomeDescrizione
Metodo protettoSupportato da XNA FrameworkEventInfoInizializza una nuova istanza della classe EventInfo.
In alto
  NomeDescrizione
Proprietà pubblicaSupportato in .NET per applicazioni Windows StoreAddMethodOttiene l'oggetto MethodInfo per il metodo AddEventHandler dell'evento, inclusi i metodi non pubblici.
Proprietà pubblicaSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreAttributesOttiene gli attributi per questo evento.
Proprietà pubblicaSupportato in .NET per applicazioni Windows StoreCustomAttributesOttiene una raccolta che contiene gli attributi personalizzati del membro. (Ereditato da MemberInfo)
Proprietà pubblicaSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreDeclaringTypeOttiene la classe che dichiara questo membro. (Ereditato da MemberInfo)
Proprietà pubblicaSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreEventHandlerTypeOttiene l'oggetto Type del delegato del gestore eventi sottostante associato a questo evento.
Proprietà pubblicaSupportato da XNA FrameworkSupportato da  Libreria di classi portabileIsMulticastOttiene un valore che indica se l'evento è multicast.
Proprietà pubblicaSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreIsSpecialNameOttiene un valore che indica se EventInfo ha un nome con significato speciale.
Proprietà pubblicaSupportato da XNA FrameworkMemberTypeOttiene un valore MemberTypes che indica che questo membro è un evento. (Esegue l'override di MemberInfo.MemberType).
Proprietà pubblicaMetadataTokenOttiene un valore che identifica un elemento di metadati. (Ereditato da MemberInfo)
Proprietà pubblicaSupportato in .NET per applicazioni Windows StoreModuleOttiene il modulo in cui viene definito il tipo che dichiara il membro rappresentato dall'oggetto MemberInfo corrente. (Ereditato da MemberInfo)
Proprietà pubblicaSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreNameOttiene il nome del membro corrente. (Ereditato da MemberInfo)
Proprietà pubblicaSupportato in .NET per applicazioni Windows StoreRaiseMethodOttiene il metodo chiamato quando viene generato l'evento, inclusi i metodi non pubblici.
Proprietà pubblicaSupportato da XNA FrameworkSupportato da  Libreria di classi portabileReflectedTypeOttiene l'oggetto classe utilizzato per ottenere questa istanza di MemberInfo. (Ereditato da MemberInfo)
Proprietà pubblicaSupportato in .NET per applicazioni Windows StoreRemoveMethodOttiene l'oggetto MethodInfo per rimuovere un metodo dell'evento, inclusi i metodi non pubblici.
In alto
  NomeDescrizione
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreAddEventHandlerAggiunge un gestore eventi a un'origine eventi.
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileEquals Restituisce un valore che indica se l'istanza è uguale ad un oggetto specificato. (Esegue l'override di MemberInfo.Equals(Object)).

In XNA Framework 3.0, questo membro viene ereditato da Object.Equals(Object).


In Libreria di classi portabile Libreria di classi portabile, questo membro viene ereditato da Object.Equals(Object).
Metodo protettoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreFinalize Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulizia prima che l'oggetto stesso venga reclamato dalla procedura di Garbage Collection. (Ereditato da Object)
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileGetAddMethod()Restituisce il metodo utilizzato per aggiungere un delegato del gestore eventi all'origine eventi.
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileGetAddMethod(Boolean)Quando è sottoposto a override in una classe derivata, recupera l'oggetto MethodInfo per il metodo AddEventHandler dell'evento e specifica se restituire metodi non pubblici.
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileGetCustomAttributes(Boolean)Se sottoposto a override in una classe derivata, restituisce una matrice di tutti gli attributi personalizzati applicati a questo membro. (Ereditato da MemberInfo)
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileGetCustomAttributes(Type, Boolean)Se sottoposto a override in una classe derivata, restituisce una matrice di attributi personalizzati applicati a questo membro e identificati da Type. (Ereditato da MemberInfo)
Metodo pubblicoGetCustomAttributesDataRestituisce un elenco di oggetti CustomAttributeData che rappresentano i dati sugli attributi applicati al membro di destinazione. (Ereditato da MemberInfo)
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileGetHashCode Restituisce il codice hash per l'istanza corrente. (Esegue l'override di MemberInfo.GetHashCode()).

In XNA Framework 3.0, questo membro viene ereditato da Object.GetHashCode().


In Libreria di classi portabile Libreria di classi portabile, questo membro viene ereditato da Object.GetHashCode().
Metodo pubblicoGetOtherMethods()Restituisce i metodi pubblici associati a un evento nei metadati tramite la direttiva .other.
Metodo pubblicoGetOtherMethods(Boolean)Restituisce i metodi associati all'evento nei metadati tramite la direttiva .other, che specifica se includere i metodi non pubblici.
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileGetRaiseMethod()Restituisce il metodo chiamato quando viene generato l'evento.
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileGetRaiseMethod(Boolean)Quando è sottoposto a override in una classe derivata, restituisce il metodo chiamato quando viene generato l'evento e specifica se restituire metodi non pubblici.
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileGetRemoveMethod()Restituisce il metodo utilizzato per rimuovere un delegato del gestore eventi dall'origine eventi.
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileGetRemoveMethod(Boolean)Quando è sottoposto a override in una classe derivata, recupera l'oggetto MethodInfo per rimuovere un metodo dell'evento e specifica se restituire metodi non pubblici.
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreGetType Ottiene il Type dell'istanza corrente. (Ereditato da Object)
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileIsDefinedQuando se ne effettua l'override in una classe derivata, indica se a questo membro sono applicati uno o più attributi del tipo specificato o dei tipi derivati. (Ereditato da MemberInfo)
Metodo protettoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreMemberwiseCloneConsente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object)
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreRemoveEventHandlerRimuove un gestore eventi da un'origine eventi.
Metodo pubblicoSupportato da XNA FrameworkSupportato da  Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)
In alto
  NomeDescrizione
Operatore pubblicoMembro staticoEqualityIndica se due oggetti EventInfo sono uguali o meno.
Operatore pubblicoMembro staticoInequalityIndica se due oggetti EventInfo non sono uguali.
In alto
  NomeDescrizione
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttribute(Type)Sottoposto a overload. Recupera una attributo personalizzato di un tipo specificato che viene applicato a un membro specificato. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttribute(Type, Boolean)Sottoposto a overload. Recupera un attributo personalizzato di un tipo specificato che viene applicato a un membro specificato e verifica facoltativamente i predecessori di tale membro. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttribute<T>()Sottoposto a overload. Recupera una attributo personalizzato di un tipo specificato che viene applicato a un membro specificato. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttribute<T>(Boolean)Sottoposto a overload. Recupera un attributo personalizzato di un tipo specificato che viene applicato a un membro specificato e verifica facoltativamente i predecessori di tale membro. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttributes()Sottoposto a overload. Recupera una raccolta di attributi personalizzati che vengono applicati a un membro specificato. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttributes(Boolean)Sottoposto a overload. Recupera una raccolta di attributi personalizzati che vengono applicati a un membro specificato e verifica facoltativamente i predecessori di tale membro. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttributes(Type)Sottoposto a overload. Recupera una raccolta di attributi personalizzati di un tipo specificato che vengono applicati a un membro specificato. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttributes(Type, Boolean)Sottoposto a overload. Recupera una raccolta di attributi personalizzati di un tipo specificato che vengono applicati a un membro specificato e verifica facoltativamente i predecessori di tale membro. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttributes<T>()Sottoposto a overload. Recupera una raccolta di attributi personalizzati di un tipo specificato che vengono applicati a un membro specificato. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreGetCustomAttributes<T>(Boolean)Sottoposto a overload. Recupera una raccolta di attributi personalizzati di un tipo specificato che vengono applicati a un membro specificato e verifica facoltativamente i predecessori di tale membro. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreIsDefined(Type)Sottoposto a overload. Indica se vengono applicati attributi personalizzati del tipo specificato a un membro specificato. (Definito da CustomAttributeExtensions).
Metodo di estensione pubblicoSupportato in .NET per applicazioni Windows StoreIsDefined(Type, Boolean)Sottoposto a overload. Indica se gli attributi personalizzati di un tipo specificato vengono applicati a un membro specificato e, facoltativamente, ai relativi predecessori. (Definito da CustomAttributeExtensions).
In alto
  NomeDescrizione
Implementazione esplicita dell'interfacciaMetodo privato_EventInfo.GetIDsOfNames Esegue il mapping di un set di nomi a un corrispondente set di identificatori di dispatch.
Implementazione esplicita dell'interfacciaMetodo privato_EventInfo.GetTypeRestituisce un oggetto T:System.Type che rappresenta il tipo EventInfo.
Implementazione esplicita dell'interfacciaMetodo privato_EventInfo.GetTypeInfoRecupera le informazioni sul tipo relative a un oggetto che può quindi essere utilizzato per ottenere informazioni sul tipo relative a un'interfaccia.
Implementazione esplicita dell'interfacciaMetodo privato_EventInfo.GetTypeInfoCount Recupera il numero di interfacce di informazioni sui tipi che un oggetto fornisce (0 o 1).
Implementazione esplicita dell'interfacciaMetodo privato_EventInfo.Invoke Fornisce l'accesso alle proprietà ed ai metodi esposti da un oggetto.
Implementazione esplicita dell'interfacciaMetodo privato_MemberInfo.GetIDsOfNames Esegue il mapping di un set di nomi a un corrispondente set di identificatori di dispatch. (Ereditato da MemberInfo)
Implementazione esplicita dell'interfacciaMetodo privato_MemberInfo.GetTypeOttiene un oggetto Type che rappresenta la classe MemberInfo. (Ereditato da MemberInfo)
Implementazione esplicita dell'interfacciaMetodo privato_MemberInfo.GetTypeInfoRecupera le informazioni sul tipo relative a un oggetto che può quindi essere utilizzato per ottenere informazioni sul tipo relative a un'interfaccia. (Ereditato da MemberInfo)
Implementazione esplicita dell'interfacciaMetodo privato_MemberInfo.GetTypeInfoCount Recupera il numero di interfacce di informazioni sui tipi che un oggetto fornisce (0 o 1). (Ereditato da MemberInfo)
Implementazione esplicita dell'interfacciaMetodo privato_MemberInfo.Invoke Fornisce l'accesso alle proprietà ed ai metodi esposti da un oggetto. (Ereditato da MemberInfo)
In alto

Utilizzare la classe EventInfo per esaminare gli eventi e per associare i gestori eventi, come illustrato nel codice di esempio per il metodo AddEventHandler.

NotaNota

EventInfo non è destinato all'utilizzo per generare eventi. La generazione di eventi da parte di un oggetto dipende dal relativo stato interno.

Gli eventi sono utilizzati con i delegati. Un listener di eventi crea un'istanza di un delegato del gestore eventi che viene richiamato ogni volta che l'evento viene generato da un'origine eventi. Per connettersi all'origine eventi, il listener di eventi aggiunge questo delegato all'elenco chiamate sull'origine. Quando l'evento viene generato, viene chiamato il metodo Invoke del delegato del gestore eventi. Sono supportate le notifiche di evento multicast e singlecast. I metodi Add e Remove, nonché la classe del delegato del gestore eventi associata a un evento, devono essere contrassegnati nei metadati.

I delegati sono puntatori a funzione orientati ad oggetti. In C o C++, un puntatore a funzione è un riferimento a un metodo. A differenza del puntatore a funzione C o C++, un delegato contiene due riferimenti: uno a un metodo e l'altro a un oggetto che supporta il metodo. I delegati possono richiamare un metodo senza conoscere il tipo di classe che dichiara o eredita il metodo. Nel caso dei delegati, è sufficiente conoscere il tipo restituito e l'elenco di parametri del metodo.

Il modello di eventi funziona correttamente per i delegati singlecast e multicast. Quando il metodo Invoke del delegato viene chiamato, un solo oggetto avrà un metodo chiamato su di esso. Un modificatore multicast può essere applicato a una dichiarazione Delegate, che consente la chiamata di più metodi quando viene chiamato il metodo Invoke del delegato.

La chiamata del metodo ICustomAttributeProvider.GetCustomAttributes su EventInfo quando il parametro inherit di GetCustomAttributes è true non segue la gerarchia dei tipi. Utilizzare System.Attribute per ereditare gli attributi personalizzati.

Note per gli eredi

Quando si eredita dalla classe EventInfo, è necessario eseguire l'override dei seguenti membri:GetAddMethod, GetRemoveMethod e GetRaiseMethod.

Nell'esempio di codice riportato di seguito si ottiene un oggetto EventInfo per l'evento Click della classe Button.


using System;
using System.Reflection;
using System.Security;

class MyEventExample
{
    public static void Main()
    {  
        try
        {

            // Creates a bitmask based on BindingFlags.
            BindingFlags myBindingFlags = BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic;
            Type myTypeBindingFlags = typeof(System.Windows.Forms.Button);
            EventInfo myEventBindingFlags = myTypeBindingFlags.GetEvent("Click", myBindingFlags);
            if(myEventBindingFlags != null)
            {
                Console.WriteLine("Looking for the Click event in the Button class with the specified BindingFlags.");
                Console.WriteLine(myEventBindingFlags.ToString());
            }
            else
                Console.WriteLine("The Click event is not available with the Button class.");
        }
        catch(SecurityException e)
        {
            Console.WriteLine("An exception occurred.");
            Console.WriteLine("Message :"+e.Message);
        }
        catch(ArgumentNullException e)
        {
            Console.WriteLine("An exception occurred.");
            Console.WriteLine("Message :"+e.Message);
        }
        catch(Exception e)
        {
            Console.WriteLine("The following exception was raised : {0}",e.Message);
        }
    }
}


.NET Framework

Supportato in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

Libreria di classi portabile

Supportato in: Libreria di classi portabile

.NET per applicazioni Windows Store

Supportato in: Windows 8

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (ruoli di base del server non supportati), Windows Server 2008 R2 (ruoli di base del server supportati con SP1 o versione successiva, Itanium non supportato)

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Questo tipo è thread-safe.

Il documento è risultato utile?
(1500 caratteri rimanenti)
Grazie per i commenti inviati.

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft. Tutti i diritti riservati.