Showing - is a property which can be binded.
If you use bidirectional binding, it is possible to set showing to true, but it is impossible to set it to false (it will be set and returned to true back immediately).
If you use unidirectional binding, you can set value to true, if you will try to set value to false, then you will get exception:
java.lang.RuntimeException: A bound value cannot be set.
at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:118)
at com.javafx.preview.control.ComboBoxBase.hide(ComboBoxBase.java:214)
at com.sun.javafx.scene.control.behavior.ComboBoxBaseBehavior.hide(ComboBoxBaseBehavior.java:218)
at com.sun.javafx.scene.control.behavior.ComboBoxBaseBehavior.onAutoHide(ComboBoxBaseBehavior.java:230)
at com.sun.javafx.scene.control.skin.ComboBoxPopupControl$2.handle(ComboBoxPopupControl.java:100)
at javafx.stage.PopupWindow.doAutoHide(PopupWindow.java:370)
at com.sun.javafx.stage.PopupEventRedirector.handleMousePressedEvent(PopupEventRedirector.java:101)
at com.sun.javafx.stage.PopupEventRedirector.handleRedirectedEvent(PopupEventRedirector.java:47)
at com.sun.javafx.event.EventRedirector.dispatchCapturingEvent(EventRedirector.java:85)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchCapturingEvent(CompositeEventDispatcher.java:22)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:31)
at com.sun.javafx.event.EventRedirector.redirectEvent(EventRedirector.java:103)
at com.sun.javafx.event.EventRedirector.dispatchCapturingEvent(EventRedirector.java:82)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchCapturingEvent(CompositeEventDispatcher.java:22)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:31)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:47)
at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:33)
at javafx.event.Event.fireEvent(Event.java:171)
at javafx.scene.Scene$MouseHandler.process(Scene.java:2893)
at javafx.scene.Scene$MouseHandler.process(Scene.java:2687)
at javafx.scene.Scene$MouseHandler.access$1300(Scene.java:2653)
at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1279)
at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:1911)
at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:204)
at com.sun.glass.ui.View.handleMouseEvent(View.java:290)
at com.sun.glass.ui.View.notifyMouse(View.java:568)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(WinApplication.java:29)
at com.sun.glass.ui.win.WinApplication$2$1.run(WinApplication.java:62)
at java.lang.Thread.run(Thread.java:722)
It talks about tryings to set showing property to true, after setting to false by binding.
You can see attached movie (is in zip).
If you use bidirectional binding, it is possible to set showing to true, but it is impossible to set it to false (it will be set and returned to true back immediately).
If you use unidirectional binding, you can set value to true, if you will try to set value to false, then you will get exception:
java.lang.RuntimeException: A bound value cannot be set.
at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:118)
at com.javafx.preview.control.ComboBoxBase.hide(ComboBoxBase.java:214)
at com.sun.javafx.scene.control.behavior.ComboBoxBaseBehavior.hide(ComboBoxBaseBehavior.java:218)
at com.sun.javafx.scene.control.behavior.ComboBoxBaseBehavior.onAutoHide(ComboBoxBaseBehavior.java:230)
at com.sun.javafx.scene.control.skin.ComboBoxPopupControl$2.handle(ComboBoxPopupControl.java:100)
at javafx.stage.PopupWindow.doAutoHide(PopupWindow.java:370)
at com.sun.javafx.stage.PopupEventRedirector.handleMousePressedEvent(PopupEventRedirector.java:101)
at com.sun.javafx.stage.PopupEventRedirector.handleRedirectedEvent(PopupEventRedirector.java:47)
at com.sun.javafx.event.EventRedirector.dispatchCapturingEvent(EventRedirector.java:85)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchCapturingEvent(CompositeEventDispatcher.java:22)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:31)
at com.sun.javafx.event.EventRedirector.redirectEvent(EventRedirector.java:103)
at com.sun.javafx.event.EventRedirector.dispatchCapturingEvent(EventRedirector.java:82)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchCapturingEvent(CompositeEventDispatcher.java:22)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:31)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:47)
at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:33)
at javafx.event.Event.fireEvent(Event.java:171)
at javafx.scene.Scene$MouseHandler.process(Scene.java:2893)
at javafx.scene.Scene$MouseHandler.process(Scene.java:2687)
at javafx.scene.Scene$MouseHandler.access$1300(Scene.java:2653)
at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1279)
at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:1911)
at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:204)
at com.sun.glass.ui.View.handleMouseEvent(View.java:290)
at com.sun.glass.ui.View.notifyMouse(View.java:568)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(WinApplication.java:29)
at com.sun.glass.ui.win.WinApplication$2$1.run(WinApplication.java:62)
at java.lang.Thread.run(Thread.java:722)
It talks about tryings to set showing property to true, after setting to false by binding.
You can see attached movie (is in zip).