JavaFX combobox所选项目类型在未聚焦时发生更改

JavaFX combobox所选项目类型在未聚焦时发生更改,combobox,javafx,Combobox,Javafx,我遇到了一些我怀疑是JavaFX中的错误,但我不完全确定 我使用自定义数据类型实现了一个组合框: @FXML ComboBox <MyDataType> cbox; 它将返回对所选对象的引用,但仅当组合框具有焦点时 如果组合框没有焦点,则所选项目将作为字符串返回,Java将抛出一个运行时错误,声称我正在尝试将字符串转换为MyDataType 如果我放弃对选择模型的调用,只使用以下命令,就会观察到完全相同的行为: MyDataType data = cbox.getValue();

我遇到了一些我怀疑是JavaFX中的错误,但我不完全确定

我使用自定义数据类型实现了一个组合框:

@FXML
ComboBox <MyDataType> cbox;
它将返回对所选对象的引用,但仅当组合框具有焦点时

如果组合框没有焦点,则所选项目将作为字符串返回,Java将抛出一个运行时错误,声称我正在尝试将字符串转换为MyDataType

如果我放弃对选择模型的调用,只使用以下命令,就会观察到完全相同的行为:

MyDataType data = cbox.getValue();
我可以通过在检索所选项目之前简单地设置组合框请求焦点来解决这个问题,但我必须这样做似乎有些奇怪

我找不到这方面的任何文件。看起来不太可能有这么大的东西会是个虫子,但我想我会看看是否有人知道一些关于它的事情

更新:

我的用例将一个FXML组件嵌套在另一个组件中,访问组合框自定义数据值的尝试来自分配给包含组件的回调(它是一个带有应用/完成/取消按钮的对话框框架,使用单独的组件提供对话框内容)


在我看来,问题就在这里,因为我无法在只使用单个组件的框架应用程序中重现问题。

您需要提供一个可观察的示例代码。还有你的环境。你可以用最近的发现更新你的问题。这可能是嵌套fxml使用场景中的一个主要错误。我已经在一个框架应用程序中测试了这个问题,无论控件的焦点状态如何,它都可以完美地工作。我的用例有点复杂(参见更新)。现在,我似乎根本无法获取自定义数据,即使我给出了控件焦点。如果我可以单独复制该问题,我一定会提供更新。
MyDataType data = cbox.getValue();