wpf - 在 XAML 中绑定(bind)到窗口事件

标签 wpf xaml mvvm window

我已经阅读了几篇关于如何在使用 MVVM 模型时从属性中获取窗口设置并在 Window XAML 中“双向”绑定(bind)它们的文章。但是,作者总是将它们保存在后面的代码中

void MainWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e) 
{ 
    Properties.Settings.Default.Save(); 
} 

我想将 MainWindow XAML 设置为绑定(bind)到保存属性的类例程。我认为应该有类似的东西:
WindowClosing="{Binding MyClosingEventRoutine}"

最佳答案

您可以使用 blend SDK 或 MVVM Light 中的 EventTrigger 行为。在窗口关闭您的 View 模型中的命令被调用。

<Window xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity">
<i:Interaction.Triggers>
    <i:EventTrigger EventName="Closing" >
        <i:InvokeCommandAction Command="{Binding MyClosingEventRoutine}" />
    </i:EventTrigger>
</i:Interaction.Triggers>
</Window>

关于wpf - 在 XAML 中绑定(bind)到窗口事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11071875/

相关文章:

wpf - WPF按钮内的png图像

c# - 使用Caliburn Micro在WPF中更新DataGrid

c# - ItemsControl 忽略资源中的 DataTemplates

c# - MVVM、DialogService 和对话结果

wpf - 样式中的代码可重用性

c# - ApiController,Viewmodel和DTO的设计

c# - 为什么 MS 在新的 Windows 应用商店应用模板中去掉了 BindableBase?

c# - WPF 将文本框绑定(bind)到 ViewModel

wpf - 删除 ContextMenu 上的图标空间

c# - 寻找有关在 WPF MVVM 应用程序中放置一些代码的指导