Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.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# 后续行动:在WPF中,将窗口置于前面_C#_Wpf_Backgroundworker_Z Order_Intptr - Fatal编程技术网

C# 后续行动:在WPF中,将窗口置于前面

C# 后续行动:在WPF中,将窗口置于前面,c#,wpf,backgroundworker,z-order,intptr,C#,Wpf,Backgroundworker,Z Order,Intptr,我试图在我当前的项目中添加一个按钮,当按下该按钮时,该按钮会将窗口向后发送x秒,允许用户在其他窗口中工作,然后自动返回到前面。通过结合和,再加上一个后台工作人员,我能够完成99%的工作。按下按钮时,窗口返回到后面,并在指定的秒数后返回。问题是,如果我进入另一个窗口(歌剧、文字等),它永远不会从后面回来。我试着玩旗子,但似乎没能使它起作用。这可能吗?如果是,怎么做 谢谢 用黑客手段是可能的。就这么做吧: Topmost = true; Topmost = false; 窗口应该在前面。是否希望窗

我试图在我当前的项目中添加一个按钮,当按下该按钮时,该按钮会将窗口向后发送x秒,允许用户在其他窗口中工作,然后自动返回到前面。通过结合和,再加上一个后台工作人员,我能够完成99%的工作。按下按钮时,窗口返回到后面,并在指定的秒数后返回。问题是,如果我进入另一个窗口(歌剧、文字等),它永远不会从后面回来。我试着玩旗子,但似乎没能使它起作用。这可能吗?如果是,怎么做


谢谢

用黑客手段是可能的。就这么做吧:

Topmost = true;
Topmost = false;

窗口应该在前面。

是否希望窗口以模式显示。。?你为什么要让窗户在一段时间内靠后。。?有什么原因吗。。为什么不设置一个布尔值,在您拥有的第二个窗口window.bringtofront(例如)可以被检查时检查ModalResult//从Miscrost站点//以模态方式显示窗口//注意:仅当窗口关闭时返回Nullable dialogResult=dialogBox.ShowDialog();原因是我写这篇文章是为了工作,在呼叫中心。我们的主要工作窗口是一个基于java的web应用程序,他们(令人讨厌地)限制了它的大小。这意味着为了使我的程序具有可用的大小,它必须包含我们需要的一些信息。通过使用这个按钮,它将允许我们隐藏程序,找到我们需要的信息,然后让它弹出,准备再次使用。在某种程度上,它只是一个“炫目”的功能,但它也非常有用,尤其是不必最小化/最大化任务栏上的窗口。我不知道您使用的是java/javascript,您在最初的问题中没有指定这一点。。好的,谢谢,为了澄清我用的是C。这是一个与他们完全不同的程序,我想他们的程序是用什么写的并不重要。我的根本不与他们的交互,它只是一个模板/快捷方式应用程序。所以基本上摆脱了MoveToForeground和MoveToBackground方法?我不想采取这种方法,但如果这是唯一可能的方法,我会接受的。:)@KevenM:强制窗口位于前景并不受windows准则的关注。所以这是唯一的,100%的解决方法。相信我;-)任务管理器是如何完成的(右键单击正在运行的程序)?这只是微软写的一个例外吗?没有办法利用这个功能?@KevenM:我还没有分析过。但我认为任务经理就是这样做的。任务管理器本身可以设置为最顶层。