WPF中如何实现一个窗体控制另一个窗体

创建了一个主窗体mainwindow和一个新窗体newwindow
mainwindow和newwindow中各有一个open按钮
当点击mainwindow中的按钮时,隐藏mainwindow,并打开newwindow
当点击newwindow中的按钮时,关闭newwindow,并显示mainwindow

这个要怎么做呢,求大神帮忙解答

如果只有两个 可以通过Application.Current.MainWindow拿到主窗口对象
主窗口Open中 隐藏MainWindow 创建NewWindow并显示
子窗口Open中 关闭NewWindow 显示MainWindow

你在open按钮写一个点击事件嘛 做的工作是:隐藏本窗口打开新窗口
同样在close按钮一样处理

你是想在点第二个窗体(Form2)的按钮时显示第一个隐藏的窗体(Form2)吧。
首先Form1上点击按钮显示Form2,隐藏自己是很容易的,
Q:其次在Form2上点击按钮,可以关闭Form2但如何显示隐藏的Form1呢?
S:Form1上写一个让Form1显示的方法,在Form2上写一个事件,该事件和Form1中的方法绑定起来。
当点击Form2中的按钮时将会触发事件,即执行Form1中的方法。试试吧

Form1代码:

 namespace 窗体测试
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Form2 f2 = new Form2();
            f2.Show();
            this.Visible = false;
            //Form2中的事件和Form1绑定起来
            f2.form1ShowEvent += form1Show;
        }
        //Form1中的一个方法
        private void form1Show() {
            this.Visible=true;
        }
    }
}

Form2代码:

 namespace 窗体测试
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            this.Close();
            form1ShowEvent();

        }
        public event Action form1ShowEvent;
    }
}