Tag: z order

新的WPF窗口仅显示在原始窗口下方

在我的WPF应用程序中,我在主窗体上有一个ListView,它显示来自DataSet的绑定数据。 当用户双击ListView中的行时,它会打开一个详细信息窗口。 在我的XAML中,我使用样式在listview上创建双击处理程序: … 在代码隐藏中,我有一个跟踪打开的详细信息窗口的字典(多个可以一次打开),这样如果一个细节窗口已经打开,它就会被带到前面。 我像这样处理双击: private void HandleDoubleClick(object sender, MouseEventArgs e) { DataRowView clickedRow = ((ListViewItem)sender).Content as DataRowView; int row = (int)clickedRow.Row[“ID”]; if (!displayedCards.ContainsKey(row)) { DetailWindow window = new DetailWindow(RetrieveData(row)); //window.Owner = this; displayedCards.Add(row, window); window.Show(); } else { displayedCards[row].Activate(); } } 我的问题是,使用上面的代码,详细信息窗口在主窗体后面打开。 如果我设置了所有者信息( window.Owner = this ),则会在主窗体的顶部打开详细信息窗口,但主窗体永远不会出现在详细信息窗口的前面。 displayedCards[row].Activate()按预期工作,将该细节窗口带到所有其他细节窗口的前面,但它成为上述相同问题的受害者 – 它不会出现在主窗口的前面。 我想要完成的是将细节窗口放在与主窗口相同的层/层(/ z顺序?)上,这样两者都可以显示在彼此的顶部,并使细节窗口显示在打开时的主要forms。 编辑:如果重要,则详细信息窗口没有WindowStyle并且AllowsTransparency设置为true。 […]

WPF Popup ZOrder

我正在使用WPF Popup,但它会弹出我桌面上的每个窗口,即使我的应用程序被最小化。 我怎样才能让它只停留在它起源的窗口上? 当我的窗口在其他窗口后面时会发生同样的事情:弹出窗口显示在它们之上。 “必须有一些事情可以做!” 谢谢。