何时以及如何使用导体

问题描述 投票:1回答:1

Caliburn Documentation的导体和成分对我有些困惑。

首先,我不清楚何时应该使用导体(以及何时使用导体,应使用哪种类型)。我的印象是,导体可以在父视图/视图模型的不同组件(具有自己的视图/视图模型)之间激活/切换。假设这是正确的,为什么不应该使用导体并激活/停用,而不是像<ContentControl x:Name="Whatever"></ContentControl>这样绑定到父视图模型中的字段?

对我来说,还不清楚使用AllActive导体的正确方法。

总而言之,我要的是更好地解释何时使用导体,以及何时/如何使用每种导体类型。

c# wpf xaml caliburn.micro
1个回答
0
投票

导体是某种视图模型,它拥有其他视图模型并控制其生命周期,因为视图模型不知道何时显示,隐藏或关闭视图模型。这是指挥的角色。

Conductor<T>.Collection.AllActive是构建导体,用于管理项目的集合,该项目的所有元素都可以同时处于活动状态。调用ActivateItem时,它将被添加到项目的内部集合中;调用DeactivateItem时,将删除项目。例如,ItemsControlGrid带有多个子项,它们同时处于活动状态

Conductor<T>.Collection.OneActive只能同时具有一个激活项目,激活期间上一个项目被禁用。例如TabControl,一次可以存在许多选项卡项目,但一次只能显示并显示一个选项卡。

© www.soinside.com 2019 - 2024. All rights reserved.