C# WPF MVVM模式下在主窗体显示子窗体并获取结果
在C#的WPF应用程序开发中,使用MVVM(Model-View-ViewModel)模式可以有效地将界面逻辑与业务逻辑分离,提高代码的可维护性和可测试性。在某些情况下,我们可能需要在主窗体中显示子窗体,并从子窗体中获取结果。本文将介绍如何在MVVM模式下实现这一功能,并提供相应的源代码。
首先,我们需要创建两个窗体,一个是主窗体(MainWindow),另一个是子窗体(ChildWindow)。在主窗体中,我们将使用命令(Command)来处理子窗体的显示和结果获取操作。
在MainWindowViewModel.cs文件中,我们首先定义一个名为ShowChildCommand的命令,用于显示子窗体。在该命令的执行方法中,我们创建一个子窗体的实例,并通过ShowDialog()方法显示子窗体。此外,我们还需要定义一个名为ChildResult的属性,用于接收子窗体的结果。
// MainWindowViewModel.cs
using System