2

XAML ではなく、C# コード ビハインドで ObjectDataProvider を作成したいと考えています。

この XAML を同等の C# に変更する方法を考えていました。XAML は Microsoft Expression Blend 2 によって生成されたので、d: 名前空間は安全に無視できます。

<ObjectDataProvider x:Key="FooSourceDS" ObjectType="{x:Type myNS:FooSource}" d:IsDataSource="True"/>

myNS は、私の CLR オブジェクトを参照する名前空間です。

C# で ObjectType を指定することに行き詰まっています。

ObjectDataProvider FooSourceDS = new ObjectDataProvider();
FooSourceDS.ObjectType = myNamespace.FooSource;

Intellisence は FooSource を ObjectType が探している「タイプ」として正しく識別していますか?

4

2 に答える 2

5

これはあなたが必要とするものですか?

FooSourceDS.ObjectType = typeof(myNamespace.FooSource)
于 2008-12-10T01:44:31.083 に答える
5

あなたの質問に対する答えは@Bryanが書いたものですが、コードレバーでObjectDataProviderが必要かどうかをクロスチェックしてください。ObjectDataProvider は、バインディングのために特定のクラスをインスタンス化する XAML の方法にすぎません。しかし、C# でコーディングしたい場合は、実際には ObjectDataProvider は必要ありません。FooSource のインスタンスを作成して使用するだけです。

于 2008-12-10T01:44:36.873 に答える