Отправить окно обратно при активации - PullRequest
0 голосов
/ 25 октября 2011

Я нашел ответ на этот вопрос в здесь .

это решение прекрасно работает, когда вы вызываете метод только один раз (не вызывайте его из активированного окна события). Я создаю гаджет и хочу, чтобы окно всегда было сзади. если пользователь нажимает на гаджет, я не хочу, чтобы он шел впереди, что является поведением окон по умолчанию. поэтому я решил создать это событие:

    private void Window_Activated(object sender, EventArgs e)
    {
        SendWpfWindowBack(this);
    }

поэтому каждый раз, когда окно активируется, оно вызывает метод, основанный на первой указанной мной ссылке. проблема в том, что системный трей отправляется обратно. позвольте мне показать вам, что я имею в виду.

это мой гаджет на визуальной студии.

enter image description here

когда я запускаю его, он отправляется обратно: (я открываю блокнот и внешний вид, чтобы проиллюстрировать свою точку зрения)

enter image description here

теперь, когда я нажимаю на него, срабатывает событие window_Activation, и оно отправляется обратно:

enter image description here

Но обратите внимание, как системный трей (окно меню запуска Windows) отправляется обратно !!!!

это все еще за всем, кроме самого важного окна, которое является меню запуска Windows. Как я могу решить это. почему это происходит перед системным треем!?

1 Ответ

2 голосов
/ 25 октября 2011

После 2 часов упрямства я понял это ... Так как окно по какой-то причине было таким большим (гаджет был больше, чем весь рабочий стол).Я сделал его меньше, и это сработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...