У меня есть элемент управления WPF Popup
, который содержит некоторые элементы управления редактированием (списки, текстовые поля, флажки), расположенные с небольшим количеством пробелов.
Popup.StaysOpen
установлен в False
, что является обязательным. Если пользователь щелкает в другом месте приложения, операцию редактирования следует считать прерванной, и всплывающее окно закрывается.
К сожалению, всплывающее окно также закрывается всякий раз, когда пользователь щелкает в фоновой области всплывающего окна (пространство между элементами управления редактированием).
Я пробовал установить всплывающее окно Focusable
. Я также попытался настроить дочерний элемент всплывающего окна (Border
) на фокусировку. Ни на одном из фронтов не повезло.
Более того, кажется, что событие мыши проходит через всплывающее окно. Какой бы элемент ни находился под всплывающим окном, когда я щелкаю, он становится сфокусированным. И это несмотря на то, что для Popup
и Border
(на который я нажимаю) для IsHitTestVisible
и Focusable
установлено значение true
.