Share via


XamlTypeInvoker.AddToCollection(Object, Object) メソッド

定義

指定した項目を、この 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)

パラメーター

instance
Object

この XamlTypeInvoker を構築するために使用した XamlType によって指定された型のインスタンス。

item
Object

追加する項目。

例外

不明な XamlType に基づく XamlTypeInvoker で、このメソッドを呼び出しました。

- または -

関連する型がコレクションではない XamlTypeInvoker で、このメソッドを呼び出しました。

instancenullです。

この XamlTypeInvokerGetAddMethod(XamlType) は、null を返します。

注釈

このメソッドは、コレクションを表す に XamlType 対してのみ呼び出す必要があります。

注意 (継承者)

基本実装には、内部ヘルパー ThrowIfUnknownへの呼び出しが含まれています。 このヘルパーは、 がXamlTypeInvoker不明XamlTypeな に基づいている場合に常に をスローします。これには、 XamlType の が であるnullケースがUnderlyingType含まれます。

内部的には、基本実装は を呼び出 IsCollectionし、結果が の場合は falseをスローします。

基本実装では、必ずしも独自 GetAddMethod(XamlType) の実装が使用されるとは限りません。 まず、 へのIListキャストinstanceが試行されます。 これが成功した場合は、 の Add(Object) 呼び出しが行われ、 メソッドは を返します。 それ以外の場合、基本実装では CLR を使用Invoke(Object, Object[])して、この XamlTypeInvokerの 呼び出しから取得した基になるAddメソッドをGetAddMethod(XamlType)呼び出します。

基本実装では、 が の場合itemnull、このレベルでは例外は発生しません。 基になる Add メソッドが呼び出されたときに例外を発生させる可能性があります。 が有効な結果を返さない場合は、他の実行時例外が発生する可能性 ItemType があります。

適用対象