XAML でオブジェクトをインスタンス化し、これらのインスタンスを再利用したいと考えています。私はそれが単純であるべきだと思いますが、私は立ち往生しています.おそらく明らかなものが欠けています.
猫を別の部屋に追加したいとします (部屋には猫型のオブジェクトを含む ObservableCollection があります)。UserControl.Resources で ObjectDataProviders を作成します。
<ObjectDataProvider x:Key="Cat1" ObjectType="{x:Type local:Cat}">
<ObjectDataProvider.ConstructorParameters>
<System:String>Tom</System:String>
</ObjectDataProvider.ConstructorParameters>
</ObjectDataProvider>
<ObjectDataProvider x:Key="Cat2" ObjectType="{x:Type local:Cat}">
<ObjectDataProvider.ConstructorParameters>
<System:String>Garfield</System:String>
</ObjectDataProvider.ConstructorParameters>
</ObjectDataProvider>
<ObjectDataProvider x:Key="Cat3" ObjectType="{x:Type local:Cat}">
<ObjectDataProvider.ConstructorParameters>
<System:String>Furball</System:String>
</ObjectDataProvider.ConstructorParameters>
</ObjectDataProvider>
私の UserControl では、猫を部屋に追加したいと考えています。
<local:Room x:Name="Room1">
<local:Room.Cats>
</local:Room.Cats>
<local:Room>
<local:Room x:Name="Room2">
<local:Room.Cats>
</local:Room.Cats>
<local:Room>
Cat インスタンスを ObservableCollection Room.Cats に追加するための構文は何ですか? たとえば、Cat1 と Cat2 を Room1 に追加し、Cat2 と Cat3 を Room2 に追加したいとします。私は完全に間違った道を進んでいますか?