在我的 WPF 应用程序中,有很多自定义对话框,可以通过
someDialogClass.ShowDialog()
弹出。为了确保对话框始终在调用它的窗口上方,我在对话框的 XAML 文件的 Window
标记中添加了 Topmost="True"
。这种方法有效,但是该对话框会显示在每个打开的窗口上,甚至是其他应用程序的窗口上面。这真的很烦人。所以,有没有一种方法可以强制对话框始终位于其父窗口之上,但不一定位于其他应用程序之上?这里是我所拥有的对话框的 Window
标记的简化版本(省略了所有的 xmlns
内容):<Window
mc:Ignorable="d"
ShowInTaskbar="False"
Topmost="True"
WindowStartupLocation="CenterOwner"
ResizeMode="NoResize"
SizeToContent="WidthAndHeight"
WindowStyle="ToolWindow">