C# WPF MVVM开发框架Caliburn.Micro常用功能指南②

本文是关于Caliburn.Micro在WPF MVVM项目中的实践指南,重点介绍事件连接和数据绑定。通过简短和长语法演示了如何将控件事件绑定到ViewModel的方法,以及依赖属性自动绑定到ViewModel的属性。同时,提到了EventAggregator用于事件发布的功能。
摘要由CSDN通过智能技术生成

这是Caliburn.Micro项目中最常用的约定和功能的快速指南。

01

事件连接

这会自动将控件上的事件关联到ViewModel上的方法。

常规约定:

这将导致按钮的单击事件调用ViewModel上的“Save”方法。

简短语法:

可以像这样使用不同的事件:

将EventArgs或输入参数传递给操作。注意:对于保护方法,这将是null,因为触发器实际上没有发生。

$dataContext

传递ActionMessage附加到的元素的DataContext。这在主/详细场景中非常有用,在主/详细场景中,ActionMessage可能会冒泡到父VM,但需要携带要执行操作的子实例。

$source

触发要发送的ActionMessage的实际框架元素。

$view

绑定到ViewModel的视图(通常是用户控件或窗口)。

$executionContext

操作的执行上下文,其中包含上述所有信息及更多信息。这在高级场景中很有用。

$this

操作附加到的实际UI元素。在这种情况下,元素本身不会作为参数传递,而是作为其默认属性传递。

长语法





<i:Interaction.Triggers>
<i:EventTrigger EventName=“Click”>
<cal:ActionMessage MethodName=“Save”>
<cal:Parameter Value="{Binding ElementName=Name, Path=Text}" />

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Caliburn.Micro是一套基于XAML的MVVM模式的开发框架,它是一个小巧而强大的框架。在Caliburn.Micro中,只需要按照约定将View的名字加上后缀ViewModel,就是它的ViewModel的名字,例如MainPage和MainPageViewModel。Caliburn.Micro会自动将ViewModel绑定到View的DataContext,并且如果ViewModel的属性名和控件的名称相同,它会自动进行绑定。 MVVM模式是一种用于开发WPF应用程序的架构模式,它将应用程序分为三个部分:Model、View和ViewModel。ViewModel负责处理View与Model之间的交互,以及将Model的数据呈现给View。MVVM模式的目标是编写优雅、可测试、可维护和可扩展的表示层代码,而Caliburn.Micro努力超越简单的MVVM实现,使开发变得更加容易。 在MVVM框架中,ViewModel通常需要实现INotifyPropertyChanged接口,以便在ViewModel的属性更改时能够自动发出事件通知View。在Caliburn.Micro中,ViewModel通常可以继承自PropertyChangedBase或Screen,这两个类都实现了INotifyPropertyChanged接口。如果继承自Screen,ViewModel可以像窗口一样进行激活、关闭等操作。 综上所述,Caliburn.Micro是一个基于XAML的MVVM框架,它使开发WPF应用程序变得更加简单和高效。它提供了自动绑定ViewModel到View的功能,同时也支持INotifyPropertyChanged接口,使ViewModel能够与View进行双向通信。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [C# WPF MVVM开发框架Caliburn.Micro入门介绍①](https://blog.csdn.net/zls365365/article/details/121711023)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [WPF MVVM框架之Caliburn.Micro(一)简介](https://blog.csdn.net/Accidentabird/article/details/130192466)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zls365365

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值