WPF: всплывающее окно всегда плавает сверху. Как мне это исправить? - PullRequest
0 голосов
/ 28 октября 2010

Всплывающее окно, которое открывается в моем приложении, всегда остается на вершине.Это уходит, когда я минимизирую приложение.Но в противном случае, если приложение открывает новое окно или я переключаюсь на другую программу без сворачивания приложения, всплывающее окно остается наверху.Как скрыть всплывающее окно, когда приложение теряет фокус?

Спасибо

Ответы [ 2 ]

2 голосов
/ 28 октября 2010

Похоже, вам нужно установить правильное окно для владельца / родителя всплывающего окна, установив для свойства Owner окно, в котором оно было создано.

0 голосов
/ 28 июля 2012

Вы можете передать владельца (родительское окно) в конструктор всплывающего окна, а затем указать

public class PopupWindow: Window
{
    public PopupWindow(Window owner)
    {
        this.Owner = owner;
    }
}

Затем открыть всплывающее окно

Теперь, чтобы открыть всплывающее окно, вы будете использоватьчто-то вроде этого:

var popup = new PopupWindow(ownerWindow);
popup.Show();

или если звонящий является родителем (владельцем)

var popup = new PopupWindow(this);
popup.Show();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...