gpt4 book ai didi

wpf - Caliburn 中 View 和 ViewModel 之间的交互

转载 作者:行者123 更新时间:2023-12-03 10:21:49 25 4
gpt4 key购买 nike

我是 Caliburn 的新来者。

我有几个关于 MVVM 和 Caliburn 的问题。

  • View 如何在 ViewModel 上显式调用方法? Caliburn 首先调用 ViewModel 构造函数。那么如果是,那么实例将被包含在哪里?我的 View 中的代码此刻创建了一个新实例(我需要显式调用 ViewModel 上的方法)。但是关于 ViewModel 应该已经实例化,这是愚蠢的。
  • 如何在 UI 线程上强制绑定(bind)更新?
  • 最佳答案

    Caliburn.Micro 的概念是 actions从 View 中调用 View 模型上的动词。您可以在很大程度上为此使用约定,例如,如果您有 Button在您看来,x:Name="Save" , 然后你的 Save View 模型上的方法将在 Button 时被调用。被点击。

    您始终可以使用显式绑定(bind)来覆盖约定,以及提供您自己的约定,并且 Caliburn.Micro 还提供附加属性以将 View 模型方法与 View 中的事件相关联。

    在强制更新 UI 方面,您的 View 模型将实现 INotifyPropertyChanged , 而 Caliburn.Micro 提供了它的基本实现,包括 PropertyChangedBase , 和 Screen (这增加了生命周期)。

    然后您可以使用 Caliburn.Micro 提供的辅助方法来调用 PropertyChanged事件。这称为 NotifyOfPropertyChange ,并且它可以使用表达式 lambda 来指定要通知的属性,而不是使用魔术字符串。

    关于wpf - Caliburn 中 View 和 ViewModel 之间的交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13508316/

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