gpt4 book ai didi

WPF 弹出窗口出现在其他桌面窗口上,如何只出现在 WPF 主窗口的顶部?

转载 作者:行者123 更新时间:2023-12-03 19:05:30 27 4
gpt4 key购买 nike

我有一个带有网格的 WPF 主窗口,并且我添加了一个 WPF 弹出窗口,以在单击按钮时向用户询问额外信息。但问题是,当其他桌面窗口移到弹出窗口上时,弹出窗口会覆盖其他桌面窗口。如何解决此问题,以便弹出窗口仅位于 WPF 主窗口的最顶部,而不是其他桌面窗口。当设置为始终位于顶部时,弹出窗口的行为就像任务管理器!

如果您使用下面的代码,您将看到弹出窗口保持在顶部。因此,将任何其他桌面窗口移到弹出窗口上方,弹出窗口将覆盖其他桌面应用程序!请注意,我不想使用 StaysOpen="False"。

<Grid>
<Popup Name="myPopup" Placement="Center" IsOpen="True">
<StackPanel Background="Green" >
<TextBox Width="200" Margin="0,0,10,0"/>
<Button Name="closePopupBtn" Content="close" Width="100" />
</StackPanel>
</Popup>
</Grid>

最佳答案

您已在弹出窗口中设置 Owner 属性。
在您的弹出窗口中,

this.owner = instanceOfParentWindow;

这也与您的问题相似。

Popup always stays on top

他们在这里创建了一个自定义弹出窗口
using user32.dll

关于WPF 弹出窗口出现在其他桌面窗口上,如何只出现在 WPF 主窗口的顶部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14561891/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com