Поведение мыши WPF при фокусировке ComboBox - PullRequest
1 голос
/ 26 мая 2009

Когда WPF ComboBox щелкается и находится в фокусе, единственное взаимодействие, которое происходит после этого, может быть с ComboBox. Если с чем-либо еще взаимодействуют, включая функции окна (minimize, restore, close, resize) и какой-либо элемент управления в окне, действие игнорируется, и ComboBox теряет фокус.

Кроме того, MouseEnter и MouseLeave на кнопках окна по-прежнему активны, но когда происходит MouseEnter на границе окна (?), Указатель мыши не меняется на указатель изменения размера. Такое поведение имеет смысл из-за использования ComboBox всплывающего элемента управления. Элемент управления всплывающими окнами существует независимо от основного визуального дерева, и, если окно перемещается или изменяется в размере, оно остается фиксированным и всплывает над главным окном.

Я пытался использовать Reflector , чтобы увидеть, что делает ComboBox, но я не смог найти то, что искал. По сути, я не знаю, происходит ли это поведение из окна ComboBox, или оно как-то связано с всплывающим окном. Как я могу решить эту проблему?

1 Ответ

1 голос
/ 27 мая 2009

Вы правы в своем описании, всплывающее окно сохраняет фокус всех действий, пока оно само не потеряет фокус. Если вы пытаетесь изменить функциональность ComboBox, вы можете захотеть взглянуть на , создав собственный ControlTemplate , который ведет себя по-другому и не сохраняет действие по умолчанию для всплывающего элемента управления.

Надеюсь, это поможет, не совсем уверен, что вы пытаетесь сделать.

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