WPF MVVM 关闭当前窗体 打开新的窗体

本文介绍了一种在WPF应用程序中实现登录成功后窗体切换的方法。通过使用RelayCommand和View-Model架构,实现了从登录页面到主界面的平滑过渡。代码示例展示了如何在XAML中绑定按钮的点击事件到View-Model中的命令,并在命令执行时关闭当前窗口并显示新的主窗口。

登录成功窗体切换

1、xaml

点击事件将登录页面某个控件带回至ViewModel

<Button Content="登  录" Command="{Binding LoginCommand}" CommandParameter="{Binding ElementName=pb_password}" Margin="30,10" Width="286" Height="40" Style="{StaticResource ButtonPrimary}"/>

2、viewmodel

/// <summary>
        /// 登录事件
        /// </summary>
        public RelayCommand<System.Windows.Controls.PasswordBox> LoginCommand =>
            new Lazy<RelayCommand<System.Windows.Controls.PasswordBox>>(() =>
                new RelayCommand<System.Windows.Controls.PasswordBox>(Login)).Value;
private void Login(System.Windows.Controls.PasswordBox password)
{
    WIndex window = new WIndex();
                        window.Show();

                        Window.GetWindow(password).Close();
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值