Język

XamlTypeInvoker.AddToDictionary(Object, Object, Object) Metoda

Definicja

Dodaje podaną wartość klucza i elementu do wystąpienia typu, który jest odpowiedni dla tego elementu 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)

Parametry

instance
Object

Wystąpienie typu określonego XamlType przez parametr używany do konstruowania tego elementu XamlTypeInvoker.

key
Object

Klucz słownika dla elementu do dodania.

item
Object

Wartość elementu do dodania.

Wyjątki

Wywołano tę metodę na obiekcie XamlTypeInvoker opartym na nieznanym XamlTypeobiekcie .

-lub-

Wywołano tę metodę w XamlTypeInvoker lokalizacji, w której odpowiedni typ nie jest słownikiem.

Parametr instance ma wartość null.

Uwagi

Tę metodę należy wywołać tylko w obiekcie XamlType reprezentującym słownik.

Notatki dotyczące dziedziczenia

Implementacja podstawowa obejmuje wywołanie wewnętrznego pomocnika ThrowIfUnknown. Ten pomocnik zawsze zgłasza przypadki, w których element XamlTypeInvoker jest oparty na nieznanym XamlTypeobiekcie , w tym przypadkach, w których element UnderlyingTypeXamlType ma wartość null.

Wewnętrznie implementacja podstawowa wywołuje metodę IsDictionaryi zgłasza wartość , jeśli wynikiem jest false.

Implementacja podstawowa nie musi używać własnej GetAddMethod(XamlType) implementacji. Po pierwsze, podejmowana jest próba rzutowania instanceIDictionary . Jeśli to się powiedzie, zostanie wykonane wywołanie Add(Object, Object) metody , a metoda zwróci wartość . W przeciwnym razie implementacja podstawowa używa środowiska CLR Invoke(Object, Object[]) do wywołania metody bazowejAdd, zgodnie z wywołaniem GetAddMethod(XamlType) metody .XamlTypeInvoker

W podstawowej implementacji nie jest zgłaszany wyjątek na tym poziomie, jeśli item lub key ma wartość null. Nadal istnieje możliwość, że metoda bazowa Add zgłosi wyjątek podczas wywoływanego wywołania. Inne wyjątki czasu wykonywania są możliwe, jeśli ItemType nie zwraca prawidłowego wyniku.

Dotyczy