Språk

XamlTypeInvoker.AddToCollection(Object, Object) Metod

Definition

Lägger till det angivna objektet i en instans av den typ som är relevant för den här XamlTypeInvoker.

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)

Parametrar

instance
Object

En instans av den typ som anges av den XamlType som används för att konstruera den här XamlTypeInvoker.

item
Object

Objektet som ska läggas till.

Undantag

Anropade den här metoden på en XamlTypeInvoker som baseras på en okänd XamlType.

-eller-

Anropade den här metoden på en XamlTypeInvoker där den relevanta typen inte är en samling.

instance är null.

Kommentarer

Du bör bara anropa den här metoden på en XamlType som representerar en samling.

Anteckningar till arvingar

Basimplementeringen innehåller ett anrop till den interna hjälpen ThrowIfUnknown. Den här hjälpen genererar alltid för fall där en XamlTypeInvoker baseras på en okänd XamlType, vilket inkluderar fall där UnderlyingType är XamlTypenull.

Internt anropar IsCollectionbasimplementeringen , och genererar om resultatet är false.

Basimplementeringen använder inte nödvändigtvis sin egen GetAddMethod(XamlType) implementering. Först försöker en cast av instance till IList . Om detta lyckas görs ett anrop till Add(Object) och metoden returneras. Annars använder basimplementeringen CLR Invoke(Object, Object[]) för att anropa den underliggande Add metoden, enligt ett anrop till GetAddMethod(XamlType) för den här XamlTypeInvoker.

I basimplementeringen höjs inget undantag på den här nivån om item är null. Det är fortfarande möjligt att den underliggande Add metoden skapar ett undantag när den anropas. Andra körningsfel är möjliga om ItemType inte returnerar ett giltigt resultat.

Gäller för