WPF 中 Loaded 和 Closing 窗口事件

在 WPF 中,LoadedClosing 是两个常用的窗口事件。下面是对这两个事件的详细解释和示例说明:

  1. Loaded 事件:
    • Loaded 事件在窗口(或其他可视元素)加载完成并准备好进行显示时触发。
    • Loaded 事件中,您可以执行初始化操作、加载数据、设置初始状态等。
    • 通常用于在窗口显示之前进行准备工作。

示例:

csharp 复制代码
public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        Loaded += MainWindow_Loaded;
    }

    private void MainWindow_Loaded(object sender, RoutedEventArgs e)
    {
        // 在窗口加载完成后执行的操作
        // 例如,加载数据、设置初始状态等
    }
}

在上述示例中,MainWindow_Loaded 方法是 Loaded 事件的处理程序。在窗口加载完成后,该方法会被调用,并在其中执行相应的操作。

  1. Closing 事件:
    • Closing 事件在窗口即将关闭时触发。
    • Closing 事件中,您可以执行清理操作、保存数据、取消关闭操作等。
    • 通常用于在窗口关闭之前进行必要的处理。

示例:

csharp 复制代码
public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        Closing += MainWindow_Closing;
    }

    private void MainWindow_Closing(object sender, CancelEventArgs e)
    {
        // 在窗口关闭前执行的操作
        // 例如,保存数据、执行清理操作等

        MessageBoxResult result = MessageBox.Show("是否确定关闭窗口?", "确认关闭", MessageBoxButton.YesNo);
        if (result == MessageBoxResult.No)
        {
            // 取消窗口关闭操作
            e.Cancel = true;
        }
    }
}

在上述示例中,MainWindow_Closing 方法是 Closing 事件的处理程序。在窗口即将关闭时,该方法会被调用,并在其中执行相应的操作。在示例中,它会显示一个确认框,询问用户是否确定关闭窗口。如果用户点击 "No",则通过设置 e.Cancel = true 来取消窗口关闭操作。


总结:Loaded 事件在窗口加载完成后触发,用于执行初始化操作;Closing 事件在窗口即将关闭时触发,用于执行清理操作或取消关闭操作。这两个事件提供了在窗口生命周期中重要的时间点执行代码的机会。

相关推荐
暮雪倾风4 小时前
【WPF开发】超级详细的“文件选择”(附带示例工程)
windows·wpf
明耀8 小时前
WPF RadioButton 绑定boolean值
c#·wpf
暮雪倾风9 小时前
【WPF开发】控件介绍-Grid(网格布局)
windows·wpf
芝麻科技2 天前
使用ValueConverters扩展实现枚举控制页面的显示
wpf·prism
笑非不退2 天前
Wpf Image 展示方式 图片处理 显示
开发语言·javascript·wpf
△曉風殘月〆3 天前
在WPF中实现多语言切换的四种方式
wpf·多语言切换
笑非不退3 天前
WPF C# 读写嵌入的资源 JSON PNG JPG JPEG 图片等资源
c#·wpf
He BianGu3 天前
演示:基于WPF的DrawingVisual开发的频谱图和律动图
wpf·示波器·曲线图·频谱分析仪·频谱图·高性能曲线·自绘
笑非不退6 天前
WPF 设计属性 设计页面时实时显示 页面涉及集合时不显示处理 设计页面时显示集合样式 显示ItemSource TabControl等集合样式
wpf
△曉風殘月〆7 天前
WPF中的XAML详解
wpf·xaml