XamlTypeInvoker.AddToDictionary(Object, Object, Object) Método

Definición

Agrega el valor de la clave y del elemento proporcionados a una instancia del tipo que es relevante para esta XamlTypeInvoker.

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)

Parámetros

instance
Object

Una instancia del tipo especificado por XamlType que se utiliza para construir este XamlTypeInvoker.

key
Object

Clave de diccionario para el elemento que se agrega.

item
Object

Valor del elemento que se va a agregar.

Excepciones

Se invoca este método en una clase XamlTypeInvoker que se basa en una clase XamlType desconocida.

o

Se invoca este método en una clase XamlTypeInvoker donde el tipo pertinente no es un diccionario.

instance es null.

Comentarios

Solo debe llamar a este método en un XamlType objeto que representa un diccionario.

Notas a los desarrolladores de herederos

La implementación base incluye una llamada al asistente ThrowIfUnknowninterno . Este asistente siempre produce para los casos en XamlTypeInvoker los que se basa en un objeto desconocido XamlType, que incluye los casos en los que el UnderlyingType de XamlType es null.

Internamente, la implementación base llama a IsDictionaryy produce si el resultado es false.

La implementación base no usa necesariamente su propia GetAddMethod(XamlType) implementación. En primer lugar, se intenta realizar una conversión de instance a IDictionary . Si esto se realiza correctamente, se realiza una llamada a Add(Object, Object) y el método devuelve. De lo contrario, la implementación base usa CLR Invoke(Object, Object[]) para invocar el método subyacente Add , como se obtiene de una llamada a GetAddMethod(XamlType) para este XamlTypeInvoker.

En la implementación base no se produce ninguna excepción en este nivel si item o key es null. Todavía es posible que el método subyacente Add genere una excepción cuando se invoque. Otras excepciones en tiempo de ejecución son posibles si ItemType no devuelve un resultado válido.

Se aplica a