XamlTypeInvoker.AddToCollection(Object, Object) Methode

Definition

Fügt das bereitgestellte Element zu einer Instanz des Typs hinzu, der für diesen XamlTypeInvokerTyp relevant ist.

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

Parameter

instance
Object

Eine Instanz des typs, der durch die XamlType zum Erstellen dieses XamlTypeInvokerTyps angegebene wird.

item
Object

Das hinzuzufügende Element.

Ausnahmen

Diese Methode wurde für eine XamlTypeInvoker Methode aufgerufen, die auf einem unbekannten XamlTypebasiert.

-oder-

Diese Methode wurde für einen XamlTypeInvoker ortsrelevanten Typ aufgerufen, bei dem es sich nicht um eine Sammlung handelt.

instance ist null.

GetAddMethod(XamlType) für diesen XamlTypeInvoker Wert wird zurückgegeben null.

Hinweise

Sie sollten diese Methode nur für eine XamlType Auflistung aufrufen, die eine Auflistung darstellt.

Hinweise für Vererber

Die Basisimplementierung enthält einen Aufruf des internen Hilfsers ThrowIfUnknown. Dieser Helfer löst immer für Fälle aus, in denen eine XamlTypeInvoker auf einem unbekannten XamlTypebasiert, was Fälle umfasst, in denen der UnderlyingTypeXamlType Fall ist null.

Intern wird die Basisimplementierung aufgerufen IsCollectionund ausgelöst, wenn das Ergebnis lautet false.

Die Basisimplementierung verwendet nicht unbedingt eine eigene GetAddMethod(XamlType) Implementierung. Zuerst wird versucht, eine Umwandlung von instance zu IList versuchen. Wenn dies erfolgreich ist, wird ein Aufruf Add(Object) ausgeführt, und die Methode wird zurückgegeben. Andernfalls verwendet die Basisimplementierung CLR Invoke(Object, Object[]) , um die zugrunde liegende Add Methode aufzurufen, wie sie von einem Aufruf GetAddMethod(XamlType) für diese XamlTypeInvokerMethode abgerufen wird.

In der Basisimplementierung wird in diesem Fall itemnullkeine Ausnahme ausgelöst. Es ist weiterhin möglich, dass die zugrunde liegende Add Methode beim Aufrufen eine Ausnahme auslöst. Andere Laufzeit exceptions are possible if ItemType does not return a valid result.

Gilt für: