XamlTypeInvoker.AddToCollection(Object, Object) Metodo

Definizione

Aggiunge l'elemento fornito a un'istanza del tipo pertinente a questo XamlTypeInvokeroggetto .

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)

Parametri

instance
Object

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

item
Object

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 è una raccolta.

instance è null.

Commenti

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

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 IsCollectione 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 IList . Se l'operazione ha esito positivo, viene eseguita una chiamata a Add(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 è 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