gpt4 book ai didi

caliburn.micro - 取决于 ContentControl (Caliburn.Micro) 的不同 View

转载 作者:行者123 更新时间:2023-12-03 11:18:44 27 4
gpt4 key购买 nike

我将 ViewModels 绑定(bind)到 ContentControls 并让 Caliburn 负责创建和绑定(bind) View 。但是,我想根据我绑定(bind)的 ContentControl 自定义 Caliburns ViewModel->View 约定。

比如一个常规的ContentControl,我想绑定(bind)常规的View(SomethingViewModel->SomethingView)。但是对于某个 ContentControl,我希望 Caliburn 获取一个名为SomethingViewSpecial 的 View 。那可能吗?

最佳答案

是的,有可能。

使用cal:View.Context附加属性,然后为指定的上下文命名您的 View ,如 YourNamespace.Something.ContextView (从您的 View 模型名称中删除“ViewModel”,添加一个点和 Context 属性的值)。

这样,您甚至可以将多个 View 绑定(bind)到一个 View 模型。

例子:

<ContentControl x:Name="Toolbar" cal:View.Model="{Binding ActiveItem}" cal:View.Context="Toolbar" />

您可以查看工作示例 here (来自 CoProject 示例应用程序, part 9)。

关于caliburn.micro - 取决于 ContentControl (Caliburn.Micro) 的不同 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7190137/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com