WPF - сделать так, чтобы окно снова открывалось при сворачивании

Я пытался сделать программу, которая заставляет эллипс двигаться на экране (клавишами со стрелками), когда я все еще могу щелкнуть окно, открытое за ним (например, - Google Chrome), и эллипс будет быть видимым и подвижным.

Я пробовал много вещей (включая TopMost) и ничего не получалось.

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

Кто-нибудь может мне помочь? У меня нет кода, который может помочь, имена задействованных объектов не имеют значения.


person user6181605    schedule 09.04.2016    source источник


Ответы (2)


Я думаю, что на ваши вопросы уже есть ответы в другом месте:

  1. Контроль перехода по клику в WPF (используйте <TextBlock IsHitTestVisible="False" .../>)

  2. Предотвращение свертывания окна:

    а. Отменить минимизирующее событие (перехватить минимизирующее событие и отменить его)

    б. Предотвращение сворачивания на "Показать рабочий стол" (Win+D) команда (отметить окно всегда сверху)

person miroxlav    schedule 09.04.2016
comment
Хотя эта ссылка может ответить на вопрос, лучше включить сюда основные части ответа и предоставить ссылку для справки. Ответы, содержащие только ссылки, могут стать недействительными, если связанная страница изменится. – Из обзора - person kerem; 09.04.2016
comment
@kerem - Хорошо, исправлено. (Хотя в этом случае ссылки являются только внутренними, и их вопросы и ответы относительно прочны, то есть они не будут скоро удалены.) - person miroxlav; 09.04.2016
comment
Ничего из этого не работает, потому что я хочу, чтобы окно было щелкающим (например, вариант 1), но когда я пытаюсь щелкнуть, компьютер фокусируется на окне позади, и я хочу предотвратить это - person user6181605; 10.04.2016

Я не уверен, правильно ли я понял ваш вопрос, вы хотите щелкнуть эллипс.

Например, вы можете просто использовать две сетки с разными ZIndex и просто регистрировать, когда щелкают 1. Например:

<Grid>
     <Grid Background="Transparent" Panel.ZIndex="1">

     </Grid>    
     <Grid Panel.ZIndex="0">
          <Ellipse Background="Blue" Height="100" Width="200"/>
     </Grid>
</Grid>
person SanHolo    schedule 09.04.2016
comment
Вы не поняли, я хочу запретить сворачивание окна, но и сделать окно за ним кликабельным. - person user6181605; 10.04.2016