Cuando el usuario selecciona valores de un cuadro combinado, si eligen un valor, se desencadena el evento "SelectionChanged" y se establece el nuevo valor y todo está bien. Sin embargo, si deciden no cambiar el valor y hacer clic en otro lugar en la interfaz de usuario (como un cuadro de texto que desean editar), tienen que hacer clic dos veces: el primer clic simplemente cierra la ventana emergente del cuadro combinado y el siguiente clic enfocará elemento que querían activar en el primer clic.Cómo obtener un cuadro combinado para establecer el foco correctamente directamente después de que se cierra la ventana emergente
¿Cómo puedo evitar que el cuadro emergente combobox secuestrar el objetivo de enfoque en el primer clic de esa manera?
He intentado controlar el evento ComboBox_LostFocus, pero esto se dispara en el momento equivocado. Cuando el usuario hace clic en el menú desplegable y se muestra la lista emergente, el evento ComboBox_LostFocus se dispara; está perdiendo enfoque en su propia lista desplegable. No quiero hacer nada para cambiar eso. Cuando el usuario hace clic y la ventana emergente se cierra, el ComboBox nunca recupera el foco (el foco simplemente se "pierde" en todo) y este evento es inútil.
Hola @Alain, el problema aquí es que estás tratando de desviarse del comportamiento habitual de un control estándar. Incluso si crees que es mejor hacerlo de la manera que describes, será inconsistente con la forma en que se usan las personas Comboboxes funcionando, que en la mayoría de los casos es una mala idea. – joshuahealy
El verdadero problema aquí es que el usuario se queja de que "necesitan hacer clic dos veces antes de que la UI responda después de ver una lista de combobox". Si vuelvo al usuario y les digo que es por diseño, encontrarán otro diseñador. – Alain
Es por eso que dije en la MAYORÍA de los casos ... ya que todos hemos tenido que tratar con clientes antes ... ¡Ojalá algún gurú de WPF pueda ayudar! – joshuahealy