我有一个主要的视图模型,这是一个Conductor<IScreen>
在应用程序中,它似乎工作得很好。相应的视图有一个名为ActiveItem的ContentControl,它显示了我可以在视图模型上使用ActivateItem激活的ActiveItem。
但是我想把这个改成Conductor<IScreen>.Collection.OneActive
。我认为在基本层面上,这将是一个简单的情况下改变我的视图模型为:
public class MyViewModel : Conductor<IScreen>.Collection.OneActive
但这似乎打破了元素在视图(他们只是不显示)谁能解释在高水平,如果有其他步骤,我可能需要测试这?或者将Collection实现更改为Conductor会有什么影响,可能会破坏视图中的其他UI元素?
最后的答案相当简单:
导体的集合实现添加的主要内容是Items属性。我的视图中有一个UI元素也叫Items,我猜是Caliburn。Micro自动将其绑定到视图中的Items元素,导致奇怪的事情发生。重命名UI元素解决了这个问题。