C# 当我关闭wpf中的主窗口时,Excel将关闭

C# 当我关闭wpf中的主窗口时,Excel将关闭,c#,wpf,visual-studio-2010,excel,user-controls,C#,Wpf,Visual Studio 2010,Excel,User Controls,我有一个Excel插件项目,它解析Excel工作簿,单击按钮时从Excel功能区弹出一个wpf窗口。问题是,当我关闭窗口时(窗口类型的UI控件)弹出。窗口上的关闭操作也会关闭Excel 代码是这样显示窗口的 MainWindow main= new MainWindow(); main.ShowDialog(); 有人能告诉我这里出了什么问题吗?我不得不问你为什么要创建一个新的MainWindow实例 您应该做的是(): //实例化窗口 DialogBox=新建DialogBox(); //模

我有一个Excel插件项目,它解析Excel工作簿,单击按钮时从Excel功能区弹出一个wpf窗口。问题是,当我关闭窗口时(窗口类型的UI控件)弹出。窗口上的关闭操作也会关闭Excel

代码是这样显示窗口的

MainWindow main= new MainWindow();
main.ShowDialog();

有人能告诉我这里出了什么问题吗?

我不得不问你为什么要创建一个新的MainWindow实例

您应该做的是():

//实例化窗口
DialogBox=新建DialogBox();
//模式显示窗口
//注意:仅当窗口关闭时返回
可为空的dialogResult=dialogBox.ShowDialog();

即使在您的情况下,您是否正在实例化对话框?是吗?的确,这是一个对话框,而不是主窗口。试试看,它可能会解决你的问题我不确定我是否能跟上你。MainWindow是我的应用程序中window类型的UI控件。两者之间的关系如何(本例中为对话框和窗口)。我想在用户单击EXCEL功能区上的按钮时打开主窗口。因此,我打电话给button click,甚至是Mainwindow.ShowDialog()。啊,是的,这不会有帮助(我的回答会给你们带来大量混乱)。您可能希望使用该信息更新问题。我认为您正在程序中打开一个excel文档,并试图调用主窗口的一个新实例来显示一个对话框。这反过来又在您完成处理之前关闭了excel文档。是的,我们都知道当有人假设。。。除息的
// Instantiate window
DialogBox dialogBox = new DialogBox();

// Show window modally 
// NOTE: Returns only when window is closed
Nullable<bool> dialogResult = dialogBox.ShowDialog();