我正在尝试使用Win Forms应用程序启动WPF应用程序。
这是我的代码
private void button2_Click(object sender, EventArgs e)
{
try
{
var app = new App();
app.InitializeComponent();
app.Run(new MainWindow());
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
当我点击按钮时,它将加载WPF应用程序。然后,如果我关闭WPF并再次单击该按钮,则会出现以下错误
无法在同一AppDomain中创建多个System.Windows.Application实例
答案 0 :(得分:0)
您无法在App类中启动多个实例。所以你可以使用一个App实例解决这个问题。答案是
public partial class Form1 : Form
{
App app;
public Form1()
{
InitializeComponent();
app = new App();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
app.InitializeComponent();
app.MainWindow = new MainWindow();
app.ShutdownMode = System.Windows.ShutdownMode.OnExplicitShutdown;
app.MainWindow.Show();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}