Lingua

XamlTypeInvoker.AddToDictionary(Object, Object, Object) Metodo

Definizione

Aggiunge la chiave e il valore dell'elemento forniti a un'istanza del tipo pertinente a questo XamlTypeInvokeroggetto .

public:
 virtual void AddToDictionary(System::Object ^ instance, System::Object ^ key, System::Object ^ item);
public virtual void AddToDictionary(object instance, object key, object item);
abstract member AddToDictionary : obj * obj * obj -> unit
override this.AddToDictionary : obj * obj * obj -> unit
Public Overridable Sub AddToDictionary (instance As Object, key As Object, item As Object)

Parametri

instance
Object

Istanza del tipo specificato dall'oggetto XamlType utilizzato per costruire questo XamlTypeInvokeroggetto .

key
Object

Chiave del dizionario per l'elemento da aggiungere.

item
Object

Valore dell'elemento da aggiungere.

Eccezioni

Richiamato questo metodo su un XamlTypeInvoker oggetto basato su un oggetto sconosciuto XamlType.

-o-

Richiamato questo metodo su un oggetto XamlTypeInvoker in cui il tipo pertinente non è un dizionario.

instance è null.

Commenti

È consigliabile chiamare questo metodo solo su un XamlType oggetto che rappresenta un dizionario.

Note per gli eredi

L'implementazione di base include una chiamata all'helper ThrowIfUnknowninterno. Questo helper genera sempre per i casi in cui un XamlTypeInvoker oggetto si basa su un oggetto sconosciuto XamlType, che include casi in cui l'oggetto UnderlyingTypeXamlType di è null.

Internamente, l'implementazione di base chiama IsDictionarye genera se il risultato è false.

L'implementazione di base non usa necessariamente la propria GetAddMethod(XamlType) implementazione. In primo luogo, viene tentato un cast di instance a IDictionary . Se l'operazione ha esito positivo, viene eseguita una chiamata a Add(Object, Object) e il metodo restituisce . In caso contrario, l'implementazione di base usa CLR Invoke(Object, Object[]) per richiamare il metodo sottostante Add , come ottenuto da una chiamata a GetAddMethod(XamlType) per questo XamlTypeInvokeroggetto .

Nell'implementazione di base non viene generata alcuna eccezione a questo livello se item o key è null. È comunque possibile che il metodo sottostante Add generi un'eccezione quando viene richiamata. Altre eccezioni di runtime sono possibili se ItemType non restituisce un risultato valido.

Si applica a