ObjectDataProvider クラス

定義

バインディング ソースとして使用できるオブジェクトをラップして作成します。

public ref class ObjectDataProvider : System::Windows::Data::DataSourceProvider
[System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)]
public class ObjectDataProvider : System.Windows.Data.DataSourceProvider
[<System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)>]
type ObjectDataProvider = class
    inherit DataSourceProvider
Public Class ObjectDataProvider
Inherits DataSourceProvider
継承
ObjectDataProvider
属性

注釈

重要

ObjectDataProvider は、指定された型またはメンバーに対してリフレクションを実行するアクセス許可がない場合に失敗します。 詳細については、「 バインディング ソースの概要」の「アクセス許可の要件」を参照してください。

バインディング ソースとして使用するオブジェクトを作成するには、さまざまな方法があります。 たとえば、Extensible Application Markup Language (XAML) ページの resources セクションでオブジェクトを作成したり、コードでオブジェクトを作成してウィンドウの として DataContext 設定したりできます。

ObjectDataProvider を使用すると、XAML でオブジェクトを作成し、バインド ソースとして使用できるようにします。 次のプロパティを使用すると、オブジェクトに対してクエリを実行し、結果にバインドできます。

  • オブジェクトの ConstructorParameters コンストラクターにパラメーターを渡すには、 プロパティを使用します。

  • プロパティを MethodName 使用してメソッドを呼び出し、 プロパティを MethodParameters 使用してパラメーターを メソッドに渡します。 その後、 メソッドの結果にバインドできます。

プロパティを IsAsynchronous 使用して、ワーカー スレッドまたはアクティブ なコンテキストでオブジェクトの作成を実行するかどうかを指定することもできます。

このクラスは、現在のバインディング ソース オブジェクトを別のオブジェクトに置き換え、関連付けられているすべてのバインドを更新する場合にも便利です。

ObjectDataProvider は、XAML でオブジェクトを作成してバインディング ソース オブジェクトとして使用する便利な方法を提供しますが、既存のデータ モデルを置き換えるものではありません。

データ バインディング用に独自のオブジェクトを実装する場合は、バインディング ソースの概要 に関する情報と推奨事項に関するページを参照してください。

コンストラクター

ObjectDataProvider()

ObjectDataProvider クラスの新しいインスタンスを初期化します。

プロパティ

ConstructorParameters

コンストラクターに渡すパラメーターの一覧を取得します。

Data

基になるデータ オブジェクトを取得します。

(継承元 DataSourceProvider)
Dispatcher

現在 Dispatcher のオブジェクトを使用する UI スレッドを取得または設定します。

(継承元 DataSourceProvider)
Error

最後のクエリ操作のエラーを取得します。

(継承元 DataSourceProvider)
IsAsynchronous

オブジェクトの作成をワーカー スレッドまたはアクティブなコンテキストのどちらで実行するかを示す値を取得または設定します。

IsInitialLoadEnabled

データの自動読み込みを回避または遅延するかどうかを示す値を取得または設定します。

(継承元 DataSourceProvider)
IsRefreshDeferred

保留状態の DeferRefresh() が使用されているかどうかを示す値を取得します。

(継承元 DataSourceProvider)
MethodName

呼び出すメソッドの名前を取得または設定します。

MethodParameters

メソッドに渡すパラメーターの一覧を取得します。

ObjectInstance

バインド ソースとして使用されるオブジェクトを取得または設定します。

ObjectType

インスタンスを作成するオブジェクトの型を取得または設定します。

メソッド

BeginInit()

このオブジェクトの初期化が開始されようとしていることを示します。一致する Refresh() メソッドが呼び出されるまで暗黙の EndInit() は発生しません。

(継承元 DataSourceProvider)
BeginQuery()

要求されたオブジェクトの作成を開始します。即座に開始するかバックグラウンド スレッドで開始するかは、IsAsynchronous プロパティの値に基づいて決まります。

DeferRefresh()

プロバイダーのプロパティを変更し、自動更新を遅延させるために使用できる遅延サイクルを入力します。

(継承元 DataSourceProvider)
EndInit()

このオブジェクトの初期化が完了したことを示します。これにより、保留状態の Refresh() が他にない場合は DeferRefresh() が発生します。

(継承元 DataSourceProvider)
Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
InitialLoad()

基になるデータ モデルに対する最初のクエリを開始します。 結果は Data プロパティに返されます。

(継承元 DataSourceProvider)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
OnPropertyChanged(PropertyChangedEventArgs)

指定された引数を使用して、PropertyChanged イベントを発生させます。

(継承元 DataSourceProvider)
OnQueryFinished(Object)

派生クラスは、このメソッドを呼び出してクエリが終了したことを示します。

(継承元 DataSourceProvider)
OnQueryFinished(Object, Exception, DispatcherOperationCallback, Object)

派生クラスは、このメソッドを呼び出してクエリが終了したことを示します。

(継承元 DataSourceProvider)
Refresh()

基になるデータ モデルに対する更新操作を開始します。 結果は Data プロパティに返されます。

(継承元 DataSourceProvider)
ShouldSerializeConstructorParameters()

ConstructorParameters プロパティを永続化する必要があるかどうかを示します。

ShouldSerializeMethodParameters()

MethodParameters プロパティを永続化する必要があるかどうかを示します。

ShouldSerializeObjectInstance()

ObjectInstance プロパティを永続化する必要があるかどうかを示します。

ShouldSerializeObjectType()

ObjectType プロパティを永続化する必要があるかどうかを示します。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

イベント

DataChanged

Data プロパティに新しい値が設定された場合に発生します。

(継承元 DataSourceProvider)
PropertyChanged

プロパティ値が変更するときに発生します。

(継承元 DataSourceProvider)

明示的なインターフェイスの実装

INotifyPropertyChanged.PropertyChanged

プロパティ値が変更するときに発生します。

(継承元 DataSourceProvider)
ISupportInitialize.BeginInit()

このメンバーは、Windows Presentation Foundation (WPF) インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 DataSourceProvider)
ISupportInitialize.EndInit()

このメンバーは、Windows Presentation Foundation (WPF) インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 DataSourceProvider)

適用対象

こちらもご覧ください