Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 多重显示对话框_C#_.net_Wpf_Windows - Fatal编程技术网

C# 多重显示对话框

C# 多重显示对话框,c#,.net,wpf,windows,C#,.net,Wpf,Windows,我有一个主窗口,它用ShowDialog()调用另一个窗口,我们称它为窗口a。窗口a也用ShowDialog()调用另一个窗口,我们称它为窗口B 每当使用Close()关闭窗口B时,我希望显示窗口A,而不是主窗口 我该怎么做?我已经试过使用this.Owner,this.Focus,等等。它们都不起作用 注意:我使用的是WPF 以下是我在主窗口中的代码: windowsawa=newwindowsa();WA.showDialog() 在WindowsA,我调用另一个窗口WindowsB: Wi

我有一个主窗口,它用
ShowDialog()
调用另一个窗口,我们称它为窗口a。窗口a也用
ShowDialog()
调用另一个窗口,我们称它为窗口B

每当使用
Close()
关闭窗口B时,我希望显示窗口A,而不是主窗口

我该怎么做?我已经试过使用
this.Owner
this.Focus
,等等。它们都不起作用

注意:我使用的是WPF

以下是我在主窗口中的代码:

windowsawa=newwindowsa();WA.showDialog()

WindowsA
,我调用另一个窗口
WindowsB

WindowsB WB=newwindowsb();WB.showDialog()

WindowsB
,我按下按钮关闭:

Close()


我应该把主人放在哪里

对不起,我刚想出来

在WA.ShowDialog()之前,我只设置了WA.Owner=this

在那之后它就开始工作了


如果我错了,请纠正我。

对不起,我刚想出来

在WA.ShowDialog()之前,我只设置了WA.Owner=this

在那之后它就开始工作了


如果我错了,请纠正我。

当您为窗口b显示对话框时,您应该将所有者设置为窗口A,那么窗口A打开的任何内容在关闭时都将返回到窗口A

像这样:
WA.ShowDialog(this)

这将使
This
成为WA的所有者


请参见此处了解更多信息:www.stackoverflow.com/a/2045671/4714970

当您对窗口b执行showDialog时,应将所有者设置为窗口a,那么窗口a打开的任何内容在关闭时都将返回到窗口a

像这样:
WA.ShowDialog(this)

这将使
This
成为WA的所有者


请参见此处了解更多信息:www.stackoverflow.com/a/2045671/4714970

当您为窗口b显示对话框时,是否应将所有者设置为窗口a,则当窗口a关闭时,窗口a打开的任何内容都将返回到窗口a。看这里:你能发布一些代码吗?当尝试复制您的问题时,我的对话框B会像您预期的那样返回到对话框A。正如@Loocid在尝试复制问题时所说,我也可以根据您的要求返回到对话框窗口A。更新问题。我把简单的代码@Aequitas,我已经尝试将所有者设置为窗口A,但仍然没有成功。Loocid,Sachu你有几张表格?I 3窗体,主窗口,窗口A,窗口B。当您为窗口B执行showDialog时,您是否应该将所有者设置为窗口A,那么windows A打开的任何内容在关闭时都将返回到窗口A。看这里:你能发布一些代码吗?当尝试复制您的问题时,我的对话框B会像您预期的那样返回到对话框A。正如@Loocid在尝试复制问题时所说,我也可以根据您的要求返回到对话框窗口A。更新问题。我把简单的代码@Aequitas,我已经尝试将所有者设置为窗口A,但仍然没有成功。Loocid,Sachu你有几张表格?I 3个窗体,主窗口,窗口A,窗口B。你说这以前不起作用?还非常确定您可以执行
WA.ShowDialog(这个)可能我忘了将“this”放在showdialog()中。你能把答案贴出来吗?我会把你的答案标记为真正的答案。谢谢你说这以前没用?还非常确定您可以执行
WA.ShowDialog(这个)可能我忘了将“this”放在showdialog()中。你能把答案贴出来吗?我会把你的答案标记为真正的答案。谢谢