Windows Forms: оставляйте приложение на вкладке «Приложения», скрывая первую форму - PullRequest
0 голосов
/ 01 марта 2011

Допустим, я пишу приложение Windows Forms (.NET Framework 3.5), которое показывает первую форму обычным способом:

Application.Run(new Foo());

На данный момент заголовок и значок этого приложения правильноотображается на вкладке «Приложение» диспетчера задач, и я счастлив.
Затем где-то в Foo я показываю вторую форму, скрывая первую:

Bar bar = new Bar();

try
{
    Visible = false;
    bar.ShowDialog();
}
finally
{
    Visible = true;
    bar.Dispose();
}

Это работает, как и ожидалось, но какПока Foo скрыт, запись на вкладке «Приложения» в диспетчере задач для приложения также исчезает.К сожалению, некоторые пользователи и сторонние инструменты ужасно смущены этим.

Есть ли способ по-прежнему отображать значок и имя приложения в диспетчере задач, если "основная форма" приложения не отображается?

Ответы [ 3 ]

2 голосов
/ 01 марта 2011

Древний трюк с дымом и зеркалами, который я делал в прошлом ... оставьте форму видимой, но установите для нее LOCATION что-то вроде top = 0, left = -5000, чтобы его не было в видимая область экрана

0 голосов
/ 01 марта 2011

Это для Windows , если главное запущенное окно скрыто, его запись на вкладке Приложения также скрыта.

Я не думаю, что вы можете сделать это, хотя можно сделать и обратное.

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

0 голосов
/ 01 марта 2011

Если бар унаследован от формы окна.Вы пытались добавить тот же значок в эту форму?

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