這個問題糾結了兩天,今天在一個朋友的幫助下,解決了,其實很簡單,但是可能作為新手,接觸WPF時間還是短,因此作為一個問題困擾了我。
父窗體部分代碼

private void EditInformation_Click(object sender, RoutedEventArgs e) { this.Visibility = Visibility.Hidden;//父窗體隱藏 Page.ALLEdit AE = new Page.ALLEdit(); AE.Owner = this;//指定子窗體的父窗體是自己 AE.ShowDialog(); //子窗體顯示 }
子窗體部分代碼

protected override void OnClosing(System.ComponentModel.CancelEventArgs e) { this.Owner.Visibility = Visibility.Visible;//顯示父窗體 base.OnClosing(e); }
重點就是在於父窗體里的AE.Owner = this;
這句話指定了父窗體是誰,如果沒有這句話,在運行子窗體關閉時,會彈出“未將對象引用到實例”。
記住,千萬不要什么一個new父窗體,這樣是不可以的。