我有一个 WPF 项目,我正在使用多个 WPF 窗口。我的 WPF 窗口是:
- 主窗口
- 窗口1
- 登录
我必须考虑情况,在第一个中一切正常,但在第二个中我得到一个空引用异常。
- 第一个场景:App.xaml 配置为启动窗口为
MainWindow
.
当用户单击 MainWindow 上的 Button 时,他在 Window1 中被转发,我有以下代码:
MainWindow obj=(MainWindow)Application.Current.MainWindow;
private void button1_Click(object sender, RoutedEventArgs e)
{
obj.checkBox1.IsChecked = false;
}
2.第二种场景:将App.xaml配置为启动窗口为登录窗口。登录代码:
private void button1_Click(object sender, RoutedEventArgs e)
{
var window=new MainWindow();
window.Show();
this.Close();
}
在这种情况下,当我单击 Window1 中的按钮时,会为 obj 引发空引用异常。
这两种情况的初始化有什么区别MainWindow
导致第二种情况出现异常,我该如何克服它?