WPF 窗口 最前端 Topmost Owner

WPF 中,如果我们想把某个窗口一直置于最前端,那么可以设置Topmost=true;

但是,这样就会有另外一个问题,就时你这个窗口,会一直处于最顶层,即使你想切换到其他程序的时候。

比如,你自己写的程序 app1,有两个窗口wind1 wind2 其中 wind2的Topmost=true。

那么再你操作自己的app1的时候,wind2始终再wind1的前面。这样时没有问题的。

但当你想切换到另外的程序,比如QQ的时候,wind1 还是会处于QQ界面的前面。这样与我们的设想时违背的。

 

 

我只是想让wind2在wind1的前面,当切换到QQ时,我希望QQ在我的app1的所有窗口的前面。

这个需求,其实不需要用到Topmost.我们可以把 wind2.Owner =wind1;这样,就OK了

并且,有时候我们在wind1界面上的某个按钮点击,弹出wind2 ,这个时候,如果没有设置wind2.Owner =wind1;  那么,如果设置 wind2的  WindowStartupLocation=WindowStartupLocation.CenterOwner; 也是没有意义的

posted on 2019-12-10 13:43  陈傻傻周笨笨  阅读(2625)  评论(0编辑  收藏  举报

导航