Reputation: 7728
I have a main viewmodel which is a Conductor<IScreen>
in application and it seems to work fine. The corresponding view has a ContentControl called ActiveItem and this displays the ActiveItem which I can activate using ActivateItem on the viewmodel.
But I want to change this to a Conductor<IScreen>.Collection.OneActive
. I thought at the basic level this would be a simple case of changing my viewmodel to:
public class MyViewModel : Conductor<IScreen>.Collection.OneActive
But this seems to break elements in the view (they just don't display) Can anybody explain at a high level if there are other steps I may need to test this? Or what the effect of changing to the Collection implementation fo the Conductor has that may break other UI elements in my view?
Upvotes: 0
Views: 826
Reputation: 7728
The answer was fairly simple in the end:
The main thing that the collection implementations of the conductors add is an Items property. It turns out there was a UI element in my view also called Items, so I guess Caliburn.Micro was automatically binding this to the Items element in the view causing odd things to happen. Renaming the UI element resolved this.
Upvotes: 3