如何在按钮单击时重置窗口

时间:2015-12-04 13:00:34

标签: c# wpf

我有一个WPF应用程序,我想在按钮点击时重置一个窗口。但只是一个特定的窗口,而不是我的所有应用程序。

我有3个窗口:main,second和third。

Main打开第二个,第二个打开第三个。

当我使用执行this.Close()的按钮关闭第三个时,我也想重新启动第二个窗口。

有办法做到这一点吗?

2 个答案:

答案 0 :(得分:0)

如果您的项目或代码基于MVVM,则Command应将您想要在Visual Tree中操作的特定Dependency对象作为参数引用。

答案 1 :(得分:0)

使用MVVM Light等MVVM框架并在窗口之间使用消息传递的最佳方法。

例如: 创建特定消息

public class RefreshWindowMessage
{
   public Guid Identity { get; set; }
}

关闭第三个

时发送消息
Messenger.Default.Send(new RefreshWindowMessage("<some guid of window>"));

在主窗口中注册消息

Messenger.Default.Register<RefreshWindowMessage>
( 
     this, 
     ( action ) => ReceiveMessage( action ) 
);

并重新启动第二个窗口。